Skip to main content

Overview Coming Soon

Early preview

Cross-border payments are coming soon. This preview gives you an early look at the expected experience so you can begin planning your integration.

As we prepare for launch, API fields, scopes, statuses, webhook events, and other details may evolve. Review the final documentation before moving your integration to production.

Cross-border payments let your end-users move USD from their Unit bank account to recipients in 100+ countries, delivered in the destination currency via the SWIFT network.

The flow:

  1. Save a counterparty
  2. Create a quote
  3. Submit a payment

Available for business and sole proprietorship customers.

See the API, Webhook Events, and Resources pages for endpoint details, event payloads, and JSON:API schemas.

Cross-border Counterparties

cross-border counterparty is the recipient of a cross-border payment. You must create a counterparty in order to send a payment.

Counterparty is created under a Customer.

You can create multiple counterparties and reuse them across payments.

More counterparty types will follow as we add cross-border payment rails.

See Create Cross-border Counterparty and Cross-border Counterparty for the full schema.

Cross-border Quotes

A quote is an offer for a cross-border payment.

It defines the payment amounts and FX rate when applicable.

You can review the quote before confirming the payment.

Create quotes via POST /quotes and retrieve them via GET /quotes/{quoteId}. See Create Quote and Get Quote in the API reference, and Quote Lifecycle for statuses and expiry.

Cross-border Payments

A cross-border payment is an international transfer of funds.

To initiate a cross-border payment, a previously created quote must be provided.

See Cross-border Payment for the full attribute schema and example payload.

Important Info

Foreign currency quotes expire 15 minutes after creation. If you create a payment after the quote's expiresAt, the payment will be rejected with QuoteExpired.

Quote Lifecycle

Quotes are single-use — once used to create a payment, they cannot be reused.

Statuses

StatusDescription
NewThe quote has been created and is available to use.
UsedThe quote has been consumed by a payment.
ExpiredThe quote expiresAt has passed, and it cannot be used to create a payment.

Payment Lifecycle

Statuses

Payments transition through the following statuses asynchronously after creation.

StatusDescription
PendingPayment created; ledger debit posted to the source account. Processing is underway.
PendingReviewAdditional information is required before the payment can continue processing. The payment remains in this status until the necessary information is submitted, then returns to Pending.
InitiatedRemittance submitted to the payment network.
SentFunds dispatched to the recipient's bank.
CompletedPayment confirmed as received by the recipient.
RejectedPayment failed. rejectionReason is populated. See Rejection reasons.
ReturnedPayment was sent or completed but subsequently returned by the beneficiary bank. returnReason is populated. See Return reasons.