Developers
Create and follow a cross-border payment through a single REST API. The contract stays the same as new corridors open, so your integration grows with the platform.
HTTP/1.1 201 Created { "id": "pay_4Qm8Ls", "status": "awaiting_funds", "rate": "18.4120" }
- payment.createdawaiting funds
- payment.fundeddeposit confirmed · ACH
- payment.settledUSDC settled · tx 0x9f3c…e21a
- payment.paid_outsubmitted · SPEI
- payment.completedconfirmed · clave de rastreo
Principles
Built for correctness first.
01 · Amounts
Exact amounts
- Integers in each currency's smallest unit
- Currency stated on every amount
- Rates as decimal strings
02 · Writes
Safe retries
- An idempotency key on every write
- A repeated request returns the original result
- Each key creates one payment
03 · Events
Signed events
- A webhook for every change in status
- Signed, so you can verify the sender
- Delivered at least once and safe to replay
Create a payment
One call to start.
Creating a payment returns the all-in rate and the deposit details for the funding leg. From there, events follow the payment to its destination.
Endpoints, fields, and events on this page are a preview of the API and can change before general availability.
curl https://api.equatorsettle.com/v1/payments \ -H "Authorization: Bearer $EQS_KEY" \ -H "Idempotency-Key: $(uuidgen)" \ -H "Content-Type: application/json" \ -d '{ "corridor": "USD.MXN", "amount": { "currency": "USD", "minor_units": 2500000 }, "beneficiary": "ben_9Kd2xQ", "reference": "INV-2026-0417" }'
const res = await fetch("https://api.equatorsettle.com/v1/payments", { method: "POST", headers: { "Authorization": `Bearer ${process.env.EQS_KEY}`, "Idempotency-Key": crypto.randomUUID(), "Content-Type": "application/json" }, body: JSON.stringify({ corridor: "USD.MXN", amount: { currency: "USD", minor_units: 2500000 }, beneficiary: "ben_9Kd2xQ", reference: "INV-2026-0417" }) });
import os, uuid, requests r = requests.post( "https://api.equatorsettle.com/v1/payments", headers={ "Authorization": f"Bearer {os.environ['EQS_KEY']}", "Idempotency-Key": str(uuid.uuid4()), }, json={ "corridor": "USD.MXN", "amount": {"currency": "USD", "minor_units": 2500000}, "beneficiary": "ben_9Kd2xQ", "reference": "INV-2026-0417", }, )
API access is issued at onboarding.
Tell us what you are building, and we will share the documentation and credentials when your business is approved.