Create a payment request
/api/v2/payment-requestsCreates a payment request in status draft. Nothing reaches the payer, and no invoice is issued, before finalize. andThen runs finalize, and then send, in the same request and fails with their codes. A currency your team cannot receive bank transfers in fails with CURRENCY_NOT_RECEIVABLE. Needs payment-requests:write.
Header Parameters
Client-chosen key, 1 to 255 characters (a UUID is recommended). The same key on the same endpoint within 24 hours replays the stored response with Idempotent-Replayed: true.
1 <= length <= 255Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v2/payment-requests" \ -H "Content-Type: application/json" \ -d '{ "description": "string", "amount": "100.00", "currency": "USD", "payer": { "type": "counterparty", "counterpartyId": "counterparty_0e4ba886-0bfe-4b6a-ae2e-d6d9d135dd1e" } }'{ "object": "payment_request", "id": "payment_request_0e4ba886-0bfe-4b6a-ae2e-d6d9d135dd1e", "customId": "campaign-42", "description": "string", "amount": "100.00", "currency": "USD", "amountDue": "100.00", "amountRemaining": "100.00", "payer": { "type": "email", "email": "jane@example.com" }, "status": "draft", "tags": [ "string" ], "paymentUrl": "string", "invoice": { "number": "string", "url": "string", "issuedAt": "string", "vatRate": "19.00", "vatAmount": "100.00", "creditNote": { "number": "string", "url": "string", "issuedAt": "string" } }, "settlements": [ { "type": "bank_transfer", "transactionId": "transaction_0e4ba886-0bfe-4b6a-ae2e-d6d9d135dd1e_out", "status": "pending", "amount": "100.00", "createdAt": "2026-09-24T10:00:00.000Z" } ], "sentAt": "2026-09-24T10:00:00.000Z", "firstViewedAt": "2026-09-24T10:00:00.000Z", "transferAnnouncedAt": "2026-09-24T10:00:00.000Z", "paidAt": "2026-09-24T10:00:00.000Z", "cancelledAt": "2026-09-24T10:00:00.000Z", "createdAt": "2026-09-24T10:00:00.000Z", "updatedAt": "2026-09-24T10:00:00.000Z"}