Skip to main content

IDs

  • Bridge resource IDs (customerId, wallet id, loanId) are UUIDs or opaque strings — store them as-is.
  • Some read responses include externalData / engine fields (integer id, statuses like loanStatusType.active). Those reflect the underlying core-banking engine; use the Bridge IDs for your calls.

Response shapes

x-bridge returns a clean, normalized view — build against that. A few read endpoints also surface the raw core-banking engine data alongside it; treat that as internal.
Lean on items and avoid fineractItems for now (the raw core-engine data on GET /v1/wms/wallets/{walletId}/transactions). Other raw engine fields (such as a customer’s externalData) are internal too — prefer the documented clean fields.

Idempotency

Money-moving calls are idempotent on a reference you supply — reuse the same reference to safely retry:
EndpointIdempotency key
POST /v1/lms/loans/{id}/repaymentsreceiptNumber
POST /v1/lms/loans/{id}/submit-paymentgatewayReference
POST /v1/wms/wallets/{id}/submit-depositgatewayReference
POST /v1/wms/wallets/{id}/reservereference
POST /collection/mobiletransactionId

Environments

Your token carries environment: "sandbox" | "production". Build against sandbox; switch by using a production key after approval. Resource IDs do not transfer between environments.

Dates

Dates are yyyy-MM-dd (e.g. 2026-03-15). Timestamps are ISO 8601.