04 / Engineering

PRECISION IN
EVERY INSTRUCTION.

Discover the engineering contract for settlement: idempotency, exact amounts, signed callbacks, correlation and reconciliation.

Engineering

An API contract for fiat payment integration

Payment integrations must account for timeouts, retries, rounding and clock drift. These illustrative API patterns describe software behaviour; actual endpoints and payment capabilities must be agreed with each participating institution before production.

Idempotency
Every instruction carries an Idempotency-Key header. A repeated or timed-out request returns the original result and never posts a second credit.
Correlation
The receiver's transfer ID and our sender reference are returned and preserved on every status response.
Amounts
Decimal strings with agreed precision, rounding rule and ISO 4217 currency codes. No floating-point values.
Timestamps
ISO 8601 in UTC, including the receiver's own posting timestamp.
Errors
Standard HTTP codes with stable, machine-readable error codes, a retryable flag and a support correlation ID.
Status delivery
Signed webhooks, authenticated polling, or both. Webhook signatures carry a key ID, timestamp tolerance and replay protection.
Environments
Separate UAT and production, with separate credentials, base URLs and IP allowlists.
Reversals
No unilateral ledger reversal. Refunds require authorisation, evidence and their own idempotency key.
POST /v1/settlement/instructionssample
# mTLS client certificate + OAuth bearer credential
Idempotency-Key: 7f3c9a1e-2b4d-4e8a-9c61-0d5e2f8b7a14
Content-Type: application/json

{
  "sender_reference": "DWP-20261103-000184",
  "transfer_type":   "CREDIT_TRANSFER",
  "amount":          "250000.00",
  "currency":        "USD",
  "beneficiary": {
    "legal_name":  "Example Trading Ltd",
    "account_id":  "GB29NWBK60161331926819",
    "bic":         "NWBKGB2L",
    "country":     "GB"
  },
  "purpose":         "Trade settlement INV-2026-0912",
  "requested_at":    "2026-11-03T09:41:02.114Z"
}

# 202 Accepted → status RECEIVED. Final only when evidence returns.
POST
/oauth/tokenOAuth authentication endpoint, client credentials
POST
/v1/settlement/instructionsSubmit a credit or fiat transfer
GET
/v1/settlement/instructions/{id}Status and posting reference
GET
/v1/reconciliation/evidence/{id}Receiver ledger evidence
POST
/v1/webhooksRegister signed status callbacks
GET
/health/readyReadiness and maintenance status
Information & resources

Your next connection.
Start with the right information.

Explore our service scope and technical information, or contact us to discuss your fiat payment integration.

Documentation enquiries

Public downloads are temporarily unavailable while documentation is updated. Contact us for current service information and applicable due diligence requirements.

Request information
The next connection starts here

LET'S BUILD
WHAT'S NEXT.

Bring your institution, your ambition
and your next challenge.

Start a conversation