Unique identifier of the destination member.
Almond Settlement API (1.1.0)
The Almond Settlement API enables clients to move funds cross-border by leveraging blockchain as the transfer layer.
As a client, you need to:
- Authenticate to obtain an access token.
- Check Settlement Rates for transparency.
- Create a Settlement with relevant details.
Almond then fully automates the orchestration — buying crypto, transferring it across the blockchain, swapping it into destination currency, and depositing it into the recipient's local bank account(or the account under the payout partner) — sending notifications upon successful completion.

Figure: Settlement Flow
Request
Create a new settlement with the specified execution interval and locked rate.
Important Notes:
- Specified
destinationMemberIdmust be a valid member ID that has an active corridor. Verify availability through/v2/settlement-contextendpoint. - Rate ID must be obtained from
/v2/settlement-ratesendpoint first - Settlement amount cannot exceed the corridor's maximum limit available in
/v2/settlement-contextAPI
Execution Intervals:
IMMEDIATE: Settlement executed as soon as possible (0 hours)ONE_HOURtoSIX_HOURS: Settlement scheduled for future execution
Settlement States After Creation:
S100_SCHEDULED: If execution interval is in the futureS200_RECEIVED: If immediate execution is requested
Amount to settle in source currency (e.g., USD).
Locked rate identifier obtained from /v2/settlement-rates endpoint.
This ID guarantees the exchange rate for this settlement. Must be valid and not expired when settlement is created.
Settlement execution interval determining when the settlement will be processed.
IMMEDIATE: Execute settlement as soon as possible (0 hours delay)ONE_HOURtoSIX_HOURS: Schedule settlement for future execution
Execution intervals allow members to optimize settlement timing based on:
- Market conditions and rate forecasts
- Business requirements and cash flow needs
- Operational schedules and working hours
- Mock serverhttps://docs.almondfintech.com/_mock/apis/settlements/v2/settlements
- Sandboxhttps://api.sandbox.almondfintech.com/v2/settlements
- Productionhttps://api.almondfintech.com/v2/settlements
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://docs.almondfintech.com/_mock/apis/settlements/v2/settlements \
-H 'Content-Type: application/json' \
-d '{
"destinationMemberId": "DEST_MEMBER_1",
"settlementAmt": 1500,
"rateId": "c162d93e-dfac-4d26-8da3-b3b76f8ca3e0",
"executionInterval": "ONE_HOUR",
"notes": "test settlement"
}'Settlement created successfully
Current status of the settlement in the processing lifecycle.
Status Flow:
S100_SCHEDULED- Settlement scheduled for future executionS200_RECEIVED- Settlement received and validated, ready for processingS300_IN_PROGRESS- Settlement actively being processedS400_FIAT_WITHDRAWAL_IN_PROGRESS- Final fiat currency withdrawal in progress
Terminal States:
S500_TERMINATED- Settlement cancelled or terminatedS600_COMPLETED- Settlement successfully completedS700_FAILED- Settlement failed during processing
Exchange rate applied to this settlement. This rate was locked when the settlement was created.
Actual amount received in destination currency. Populated when settlement is completed (S600_COMPLETED status).
{ "settlementId": "a5740343-91db-4218-b5bd-8f4c8", "settlementStatus": "S100_RECEIVED", "settlementAmt": 1500, "pendingAmt": 1500, "rate": 55.76115, "settlementAmtReceived": 83641.725, "sourceCcy": "USD", "destinationCcy": "PHP", "sourceMemberId": "SOURCE_MEMBER", "destinationMemberId": "DEST_MEMBER_1", "notes": "test settlement", "creationTime": "2024-01-15T10:30:00Z", "completionTime": null, "dueDate": "2024-01-15T11:30:00Z" }
Request
Retrieves a paginated list of settlements with optional filtering and sorting.
Available Filters:
destinationMemberId: Filter by specific destination membersettlementStatus: Filter by settlement status (S100_SCHEDULED, S200_RECEIVED, etc.)createdAfter: Filter settlements created after a specific date/time
Sorting Options:
sortField: Field to sort by (creationTime, settlementAmt, rate, etc.)sortDirection: ASC (ascending) or DESC (descending)
Pagination:
page: Page number (0-based)size: Number of records per page (default: 10)
Response includes:
- Array of settlement records
- Pagination metadata (totalPages, totalRecords)
- Settlement details for each record
Zero-based page number for pagination. Use 0 for the first page, 1 for second page, etc.
Sort direction for ordered results:
- ASC: Ascending order (A-Z, 0-9, earliest to latest)
- DESC: Descending order (Z-A, 9-0, latest to earliest)
Field to sort settlements
Filter settlements for this specific destination member.
Filter settlements by current status
- Mock serverhttps://docs.almondfintech.com/_mock/apis/settlements/v2/settlements
- Sandboxhttps://api.sandbox.almondfintech.com/v2/settlements
- Productionhttps://api.almondfintech.com/v2/settlements
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.almondfintech.com/_mock/apis/settlements/v2/settlements?page=0&size=10&sortDirection=ASC&sortField=settlementAmt&destinationMemberId=DEST_MEMBER_1&settlementStatus=S100_SCHEDULED&createdAfter=2024-01-01T00%3A00%3A00Z'{ "settlements": [ { … } ], "page": 0, "size": 10, "totalPages": 1, "totalRecords": 1 }
- Mock serverhttps://docs.almondfintech.com/_mock/apis/settlements/v2/settlements/{settlement-id}
- Sandboxhttps://api.sandbox.almondfintech.com/v2/settlements/{settlement-id}
- Productionhttps://api.almondfintech.com/v2/settlements/{settlement-id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.almondfintech.com/_mock/apis/settlements/v2/settlements/{settlement-id}'Settlement Response
Current status of the settlement in the processing lifecycle.
Status Flow:
S100_SCHEDULED- Settlement scheduled for future executionS200_RECEIVED- Settlement received and validated, ready for processingS300_IN_PROGRESS- Settlement actively being processedS400_FIAT_WITHDRAWAL_IN_PROGRESS- Final fiat currency withdrawal in progress
Terminal States:
S500_TERMINATED- Settlement cancelled or terminatedS600_COMPLETED- Settlement successfully completedS700_FAILED- Settlement failed during processing
Exchange rate applied to this settlement. This rate was locked when the settlement was created.
Actual amount received in destination currency. Populated when settlement is completed (S600_COMPLETED status).
{ "settlements": [ { … } ] }