POST
Confirm a card settlement
Organization space Accounting module For: Accountant · Permission: settlements.settle Conditions
  • The accounting module must be active for the organization.
  • A card settlement can be confirmed only from the organization space.
  • The caller must have been granted access to the book in the URL and to the organization’s own book, which the posting writes into.
  • The book in the URL must be a company book; the organization’s own book or a client book is refused.
  • The settlement must be a credit card payment.
  • A cancelled or reversed settlement cannot be settled.
  • settled_at is required and must not be before the settlement’s initiated date.
  • The settlement’s money account must still be active and linked to an accounting account of the organization.
  • Each fee must target either the card payment route account with direction outgoing, or the money account’s accounting account with direction incoming; any other subject, or the same subject and direction twice, is refused.
  • actual_fee_amount is refused whenever the matching fee rule is not of type actual, and the amount is required when it is.
  • A fee must not exceed the amount it applies to, and the net amounts after fees must stay positive; a fee on both the company side and the organization side at once is refused.
  • The settled_at date must fall in an open fiscal period of both books.
  • Replaying on an already settled settlement returns it unchanged only when settled_at, external_reference and fees match the first confirmation exactly; different details are refused.
What else happens
  • The settlement becomes settled, with settled_at, settled_by and the external reference stored, and the fee details frozen in its conversion snapshot.
  • Posts a bank-journal entry in the company book: debit the intercompany current account of the organization, credit the card payment route account for the gross amount, and debit the fee expense account when a company fee applies.
  • Posts a bank-journal entry in the organization book: debit the money account’s accounting account for the net amount, credit the intercompany current account of the company, and debit the fee expense account when an organization fee applies.
  • Records each applied fee against its entry and marks the fee rule as used.
  • The payment source’s accounting status becomes settled.
Part of Card and payment settlements.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

settlement
string
required

Identifier of the credit card settlement to confirm (27-character KSUID string).

Query Parameters

response
enum<string>
default:none

Response mode. Default none; none answers 204 No Content.

Available options:
none,
resource
fields
string

Comma-separated JSON keys of the root resource (id is always rendered). Available: id, company_id, source_type, source_id, direction, payment_method, creation_mode, status, money_account_id, payment_route_account_id, register_payment_method_id, original_amount, original_currency_code, original_currency_exponent, company_functional_amount, company_currency_code, company_currency_exponent, organization_functional_amount, organization_currency_code, organization_currency_exponent, conversion_snapshot, external_reference, initiated_at, settled_at, reversed_at, reversed_by, reversed_by_type, created_at, updated_at.

include
string

Comma-separated include paths, each optionally followed by its fields in parentheses: units(id,sku),units.uomUnit(id,name). Max depth 6, max 40 paths. Available: .

Body

application/json
settled_at
string<date-time>
required

Date and time the money reached the account (ISO 8601). Required; must not be before the settlement's initiated date and must fall in an open fiscal period.

external_reference
string | null

Reference of the provider or bank, up to 255 characters. When omitted, the settlement keeps its existing reference.

Maximum string length: 255
fees
object[] | null

Fees actually charged on this settlement. Optional; only fees with a matching fee policy are applied, and a subject and direction pair may appear once.

Response

Resource (only with response=resource).

id

Identifier of the settlement (27-character KSUID string).

company_id

Identifier of the company the record belongs to.

source_type

Kind of business record whose payment is settled, for example order_payment or customer_credit_payment.

source_id

Identifier of that business record (27-character KSUID string). A payment can have only one settlement per company.

direction

Direction of the money flow; incoming for payments received.

payment_method

Payment method: credit_card (starts initiated, confirmed later by the organization), bank_transfer or mobile_money (created already settled).

creation_mode

manual or automatic: how the settlement was created. Settlements created for the supported methods are automatic.

status

initiated (waiting for the money), settled (money confirmed on the money account), cancelled (initiated one that was reversed) or reversed (settled one that was reversed).

money_account_id

Organization money account that receives the money (27-character KSUID string).

payment_route_account_id

Accounting account of the payment route the payment went through (27-character KSUID string).

register_payment_method_id

Identifier of the register payment method the payment went through (27-character KSUID string); null when the payment has none.

original_amount
integer

Amount in the currency the customer paid in, an integer in minor units (divide by 10 to the power original_currency_exponent).

original_currency_code

Currency the customer paid in (ISO 4217 code).

original_currency_exponent
integer

Number of decimal places of the original currency.

company_functional_amount
integer

Amount in the company currency, an integer in minor units, frozen from the payment conversion.

company_currency_code

Company currency (ISO 4217 code).

company_currency_exponent
integer

Number of decimal places of the company currency.

organization_functional_amount
integer

Amount in the organization currency, an integer in minor units, frozen from the payment conversion.

organization_currency_code

Organization currency (ISO 4217 code).

organization_currency_exponent
integer

Number of decimal places of the organization currency.

conversion_snapshot
object

Frozen record of the conversions, the fees applied when settled, a hash of the confirmation payload, the accounting posting status and the journal entry identifiers, and the reversal details. Never recalculated with newer rates.

external_reference

Reference supplied by the payment provider or the bank; null when none.

initiated_at

Date and time the settlement was initiated (ISO 8601).

settled_at

Date and time the money was confirmed (ISO 8601); null until settled.

reversed_at

Date and time the settlement was reversed or cancelled (ISO 8601); null otherwise.

reversed_by

Identifier of the member profile or agent account who reversed it; null otherwise.

reversed_by_type

Type of the actor who reversed it; null otherwise.

created_at

Date and time the record was created (ISO 8601, UTC).

updated_at

Date and time the record was last changed (ISO 8601, UTC).