Skip to Content
GuidesInvoices

Invoices

This guide outlines how to use the Checkbook API to send and pay invoices. In addition to sending and paying invoices via the API, invoices can be managed on the Checkbook dashboard and recipient experience.

Invoices can also be used to debit users who are not VERIFIED in the Checkbook User Lifecycle as a way for them to send payments out of their bank account. The creator of the invoice must be VERIFIED and is the actual recipient of the funds (also known as the payee), and the invoice payer only needs their bank account to be VERIFIED and is the sender of the funds (payor).

Create an Invoice

Things you need

amount: The amount of money being requested

description: A description for the invoice

name: The recipient’s name

recipient: A way to contact the recipient (e.g. a phone number or an email address)

Request:

curl -X POST \ -H "Authorization: d6aa2703655f4ba2af2a56202961ca86:dXbCgzYBMibj8ZwuQMd2NXr6rtvjZ8" \ -H "Content-Type: application/json" \ -d '{ "name": "Michael Scott", "recipient": "Michael_Scott_Ppr_Company", "description": "Office bagels", "amount": 10.00 }' \ https://demo.checkbook.io/v3/invoice

Response:

{ "amount":10.0, "date":"2025-04-29 08:15:05", "description":"Office bagels", "id":"09b52a34b067480d800af56b5f44e16b", "name":"Michael Scott", "number":"3105", "recipient":"Michael_Scott_Ppr_Company", "status":"UNPAID" }
🚫
Caution

The sender of the invoice must be VERIFIED in order to create an invoice.

Note

When creating an invoice, you can provide the optional account field to specify which account the paid invoice will credit. Otherwise, it will go into the default bank account on file.

Pay an invoice

Once an invoice has been sent, the payor can pay the invoice programmatically using their authentication keys (assuming the invoice was not sent to an email).

Things you need

amount: The full amount of the invoice

id: ID of the invoice to pay

Request:

curl -X POST \ -H "Authorization: de2cd51420464f0fae44189e233cad27:uejJbr1RdPlrcx8QRAA7qIAGFTfd0K6CtmVYe2kH" \ -H "Content-Type: application/json" \ -d '{ "id": "09b52a34b067480d800af56b5f44e16b", "amount": 10.00 }' \ https://demo.checkbook.io/v3/invoice/payment '

Response:

{ "amount": 10, "date": "2025-04-29 08:15:05", "id": "8c466ab329cb4cdcb7d264a86f221dff", "name": "Michael Scott", "status": "IN_PROCESS" }

The IN_PROCESS status indicates success. Checkbook will automatically move the funds on your behalf and the payment will settle in 3-4 business days.

🚫
Caution
  • If you don’t pay the exact amount for the invoice, you may receive an error indicating Invoice not found.
  • The same invoice cannot be paid multiple times.
Note

When paying an invoice, you can also provide the optional account field to specify which account the paid invoice will debit. Otherwise, it will select the default bank account on file.

Last updated on