curl https://api.openfi.co/v1/payments \
-H "Authorization: Bearer $OPENFI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"amount": 2500.00,
"currency": "USD",
"source": { "type": "bank_account", "id": "src_123" },
"destination": { "type": "wallet", "address": "0xabc123..." },
"reference": "INV-00219"
}'
{
"id": "pay_01HZX...",
"status": "pending",
"amount": 2500.00,
"currency": "USD",
"settlement": {
"chain": "aptos",
"tx_hash": null
},
"created_at": "2026-08-27T14:03:00Z"
}
Payments (one-time)
Create a payment
Execute a single one-time push or pull payment, with atomic settlement into the destination stablecoin or account.
POST
/
v1
/
payments
curl https://api.openfi.co/v1/payments \
-H "Authorization: Bearer $OPENFI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"amount": 2500.00,
"currency": "USD",
"source": { "type": "bank_account", "id": "src_123" },
"destination": { "type": "wallet", "address": "0xabc123..." },
"reference": "INV-00219"
}'
{
"id": "pay_01HZX...",
"status": "pending",
"amount": 2500.00,
"currency": "USD",
"settlement": {
"chain": "aptos",
"tx_hash": null
},
"created_at": "2026-08-27T14:03:00Z"
}
Use this endpoint for any transfer that doesn’t need a standing authorization. For recurring, agent-initiated pulls, use mandates instead.
Body Parameters
number
required
Amount in the currency’s major unit (e.g.
25.00).string
required
Three-letter currency code. One of
USD, CAD, GBP. See Supported Rails for per-currency constraints.object
required
object
required
Same shape as
source.string
Free-text reference or invoice ID, echoed back on the resource and used to reconcile against your own ERP/accounting system.
Response
string
Unique payment ID, prefixed
pay_.string
One of
pending, settled, failed.object
curl https://api.openfi.co/v1/payments \
-H "Authorization: Bearer $OPENFI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"amount": 2500.00,
"currency": "USD",
"source": { "type": "bank_account", "id": "src_123" },
"destination": { "type": "wallet", "address": "0xabc123..." },
"reference": "INV-00219"
}'
{
"id": "pay_01HZX...",
"status": "pending",
"amount": 2500.00,
"currency": "USD",
"settlement": {
"chain": "aptos",
"tx_hash": null
},
"created_at": "2026-08-27T14:03:00Z"
}

