ACH, RTP, FedNow, SEPA, SEPA Instant, SWIFT, Wire, PIX, SPEI, FPS, UPI, Interac. We pick the cheapest, fastest rail — you pay one fee, one spread, one invoice.
Our router picks the cheapest available rail that meets your speed requirement. Falls back gracefully when a rail is down.
Webhook events at every state: accepted, cleared, settled, returned. Signed, idempotent, replayable.
Handle NSF, invalid account, recall requests automatically. Auto-retry, auto-notify, auto-reconcile.
Batch settlement, low cost, high reliability. The workhorse for US B2B.
The Clearing House's instant rail. 24/7/365, irrevocable, settles in seconds.
Federal Reserve's instant rail. Growing bank coverage, direct to Fed.
Pan-European, batch, cheap. 36 countries, all EU banks, EUR only.
<10 seconds, 24/7, 100% of EU banks by 2025. Our default EU rail.
UK's instant rail. Near-universal adoption, sub-second settlement.
Brazil's 24/7 instant rail. QR, key, or full account. Near-zero cost.
Mexico's real-time rail. 24/7 to all major banks. Used for B2B and payroll.
The fallback. 180+ countries. Used when no local rail exists.
And a lot you didn't know you needed until you sent your first bad wire.
Specify a speed and a price, we find the right rail. Deterministic, replayable, observable.
CSV, API, or UI. One approval, one idempotency key, one reconciliation.
Pay every 15th. Pay every Friday. Pay on invoice-paid date +3 days.
Thresholds, dual-control, Slack + email. Auto-approve under $X, escalate over.
ISO 20022 remittance data. Your recipient's AR team reconciles in seconds.
NSF? Try RTP. Invalid account? Notify vendor. Fraud? Block, reroute, alert.
Request a reversal on ACH/SEPA. Track status, auto-refund on success.
$5K for ops, $50K for managers, $500K for the CFO. Override with 4 eyes.
OFAC, EU, UN lists. Run on every send, every recipient, every beneficial owner.
POST. Any rail.Tell us the destination. We pick the rail. Or specify one explicitly — your call.
// Let us pick the best rail const tx = await payouts.transfers.create({ amount: 48200, currency: "USD", recipient: "rcp_tanaka_84k", speed: "instant", // or "standard" max_fee: 200, memo: "INV-2418", idempotency: "abc-123", }); // router chose: RTP (instant, $0.75) { id: "tx_9fEH2Q", rail: "RTP", fee: 75, eta: "<5s", status: "submitted" }
/transfers/quote with the amount and recipient, we return the exact rail, fee, FX rate, and ETA. No surprises.transfer.returned webhook with the NACHA return reason code, auto-reverse in your ledger, and notify the sender.