Get settlement
API contract v1.0.0
getSettlement/v1/settlements/{settlement_id}The Developer role can't grant finance:read by default. Use a key created by an Owner or Admin.
Retrieves a settlement and its source line items. A settlement fixes its line items, currency, fees, payout account snapshot and totals; it can't be edited after review, and later account changes don't affect existing settlements. payout_amount = reserved_amount - fee_amount. Refunds, chargebacks and reserve releases don't rewrite past settlements.
Request headers
| Request headers | Required | Format | Description |
|---|---|---|---|
| Authorization | Yes | Bearer <API_KEY> | Server-side key, to be used only on the merchant's server. The merchant and environment are derived from the key. A missing, invalid, revoked or expired key returns 401. |
Request example
curl -X GET 'https://api.fluxan.co/v1/settlements/<SETTLEMENT_ID>' \
-H 'Authorization: Bearer <TEST_SERVER_API_KEY>'Placeholders to replace
<SETTLEMENT_ID>: Replace with your actual value<TEST_SERVER_API_KEY>: Test-environment server API key, created on the "API Key" page of the merchant portal
Note
Server API keys must only be used on your own server, so the docs site doesn't offer interactive API testing. Get a test key: API Key page in the merchant portal (opens the merchant portal in a new tab) (Test environment; Requires Owner, Admin or Developer)
Responses
The settlement and its line items.
{
"id": "stl_demo_001",
"currency": "USD",
"period_start": "2026-09-23",
"period_end": "2026-09-23",
"status": "paid",
"reserved_amount": 96500,
"fee_amount": 500,
"payout_amount": 96000,
"payout_account": {
"holder_name": "Demo Merchant Ltd",
"bank_name": "Example Bank",
"account_last4": "6789"
},
"payout_id": "po_demo_001",
"created_at": "2026-09-24T01:00:00Z",
"items": [
{
"source_type": "payment",
"source_id": "pay_demo_001",
"amount": 96500
}
],
"request_id": "req_demo_033"
}Response fields
Returns an object. See the object section for field descriptions.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Required | Settlement ID. Example: |
currency | string | Required | Settlement currency. Constraints: Example: |
period_start | string(date) | Required | The business date on which the settlement period starts (inclusive), in the merchant's settlement business time zone. Example: |
period_end | string(date) | Required | The business date on which the settlement period ends (inclusive). Example: |
status | string | Required | Settlement status.
Example: |
reserved_amount | integer(int64) | Required | S, the balance this settlement reserves by moving it from available to payout_pending. Constraints: Example: |
fee_amount | integer(int64) | Required | Settlement fee F. The default is 0. Constraints: Example: |
payout_amount | integer(int64) | Required | Actual bank payout amount = S - F. Constraints: Example: |
payout_account | PayoutAccount | Required | A masked snapshot of the payout account, taken when the settlement was generated. |
holder_name | string | Required | Account holder. Example: |
bank_name | string | Required | Bank name. Example: |
account_last4 | string | Required | Last four digits of the account number. Constraints: Example: |
payout_id | stringNullable | Required | The corresponding payout record; null until it has been executed. Example: |
created_at | string(date-time) | Required | The time the settlement was generated. Example: |
items | array<SettlementItem> | Required | |
source_type | string | Required | Source type, for example payment, refund or adjustment. Example: |
source_id | string | Required | Source object ID. Example: |
amount | integer(int64) | Required | The signed amount counted toward this settlement, in the same currency as the settlement. Example: |
request_id | string | Required | Unique identifier of this request, used for troubleshooting and support. Example: |
Possible error codes
| HTTP | Error code | When it occurs | How to handle |
|---|---|---|---|
| 404 | not_found | An incorrect ID; using a test key to look up a live object; looking up a platform exception refund (not returned by the open API) | Check the ID and the environment of the key you used; the platform doesn't reveal whether another merchant's object exists |
| 401 | unauthenticatedCommon | No Authorization header was sent; the key was copied incompletely; the old key expired after a rotation; the key was revoked | Check your credentials: on the API Key page in the merchant portal, verify the key's status and environment |
| 403 | forbiddenCommon | Creating a refund with a read-only key; calling getEvent without the read scope for the event's business area; if the request's source IP isn't on the key's allowlist, the more specific ip_not_allowed is returned | Use a key that has the required scope; don't work around the restriction |
| 429 | rate_limitedCommon | A rate limit per merchant and per key; switching keys doesn't get around the merchant's overall limit | Wait for Retry-After seconds, then retry with the original idempotency key |
| 500 | internal_errorCommon | — | Retry with the original idempotency key, or query by merchant order ID / refund ID; never charge again with a new key |
| 502 / 503 | upstream_unavailableCommon | A provider or platform dependency failed, and the platform can't confirm whether this request took effect | Same as above |
Notes
itemsholds the source line items of the settlement, andamountis signed.payout_amount = reserved_amount - fee_amount.payout_accountis a masked snapshot taken when the settlement is generated. Changing your payout account later doesn't affect existing settlements.- Refunds, chargebacks and reserve releases don't rewrite past settlements.