Skip to Content
GuidesVirtual CardStandard

Standard

This guide outlines how to use the Checkbook API to create virtual cards for marketplace users, and load them with funds from the marketplace owner.

Create Recipient

Create the marketplace user who will be receiving the virtual card

💡
Tip

For this request, you’ll be using the API keys of the marketplace owner

Things you need

user_id: Unique identifier for new user

name: Name of user or business

curl -X POST \ -H "Authorization: d6aa2703655f4ba2af2a56202961ca86:dXbCgzYBMibj8ZwuQMd2NXr6rtvjZ8" \ -H "Content-Type: application/json" \ -d '{ "name": "Michael Scott", "user_id": "Michael_Scott_Ppr_Company" }' \ https://demo.checkbook.io/v3/user

The response will give us the user’s api keys

{ "id":"a7703226a05e4835bebbd7449afc9a3d", "key":"de2cd51420464f0fae44189e233cad27", "secret":"uejJbr1RdPlrcx8QRAA7qIAGFTfd0K6CtmVYe2kH", "user_id":"Michael_Scott_Ppr_Company" }

Create a Virtual Card

We now create the virtual card for the new user

💡
Tip

For this request, you’ll be using the API keys of the marketplace user

curl -X POST \ -H "Authorization: de2cd51420464f0fae44189e233cad27:uejJbr1RdPlrcx8QRAA7qIAGFTfd0K6CtmVYe2kH" \ -H "Content-Type: application/json" \ -d '{ "email": "michael@dundermifflin.com" }' \ https://demo.checkbook.io/v3/account/vcc

The response will give us the virtual card id, which will be used to load funds

{ "card_number":"0000", "expiration_date":"2027-04-29", "id":"d33ddc525445472a824534ae39e990fa" }

Send Payment

We’ll now be sending a payment from the marketplace owner to the marketplace user

💡
Tip

For this request, you’ll be using the API keys of the marketplace owner

Things you need

amount: The amount of money being sent

name: The recipient’s name

recipient: The user ID of the marketplace user created in Step 1

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

The response confirms the payment has been created and provides the payment ID

{ "amount": 10.0, "comment": null, "date": "2025-04-29 09:43:37", "description": null, "id": "81aeb93d0db34af9a7a73814fbb8778b", "image_uri": "https://checkbook-checks-demo.s3.amazonaws.com/95f2c701-4aa0-4799-b82a-bf1f147f61c9.png", "name": "Michael Scott", "number": 53050163, "recipient": "Michael_Scott_Ppr_Company", "remittance_advice": [], "status": "UNPAID" }

Deposit the Payment

Lastly, we’ll deposit the payment to the virtual card

💡
Tip

For this request, you’ll be using the API keys of the marketplace user (e.g. the recipient of the payment)

Things you need

account: The id of the account (e.g. virtual card) where the payment will be deposited

curl -X POST \ -H "Authorization: de2cd51420464f0fae44189e233cad27:uejJbr1RdPlrcx8QRAA7qIAGFTfd0K6CtmVYe2kH" \ -H "Content-Type: application/json" \ -d '{ "account": "d33ddc525445472a824534ae39e990fa" }' \ https://demo.checkbook.io/v3/check/deposit/81aeb93d0db34af9a7a73814fbb8778b
Last updated on