Cancel a payment request
/api/v2/payment-requests/{id}/cancelMoves the request to cancelled. A request with an invoice gets an invoice.creditNote that cancels the invoice; Talentir emails it to the payer when the request was emailed. Allowed while status is draft or open. Needs payment-requests:write.
Path Parameters
The payment request id (payment_request_…) or your customId.
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 <= 255Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v2/payment-requests/payment_request_0e4ba886-0bfe-4b6a-ae2e-d6d9d135dd1e/cancel"{ "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"}Send a payment request POST
Talentir emails `paymentUrl` to the payer and sets `sentAt`. A `draft` is finalized first. With an invoice, the email is the invoice: it names the invoice number, states `amountDue`, and attaches the PDF. Without one, it is a payment request for `amount` before VAT, and the invoice follows by email once the payer enters their billing details. Calling it again resends the email. One reminder follows a week after the latest email, unless the payer announced a transfer or started a payout. Payment is due on receipt. Allowed while `status` is `draft` or `open`. A counterparty payer without an email fails with `PAYER_EMAIL_MISSING`. Needs `payment-requests:write`.
Simulate the payer's bank transfer POST
Sandbox only. Deposits `amountDue` with the invoice number as reference, as the payer's bank would, and runs it through the real matching and crediting. Returns the request with its new `bank_transfer` settlement. Needs an `open` request with an `invoice`. Outside the sandbox the request fails with `SANDBOX_ONLY`. Needs `payment-requests:write`.