Wallets and Enhanced Wallets

What is a wallet?

Checkbook has released a new feature with the Checkbook API to enable prefund customers to allocate funds to users within a marketplace. This feature, referred to as a "wallet", enables you to quickly originate payments using the digital payment or physical check endpoints by specifying the wallet ID in the account parameter, thereby allowing you to send payments fast.

Note: You may create up to five wallet accounts by making an API call to the wallet endpoint like the example shown below.

POST /v3/account/wallet

Once a wallet has been created, a default balance of $0 is associated with the wallet (since there are no funds in the wallet at wallet creation). You can receive payments; however, in order to send payments, your wallet must have a plus balance.

Adding funds to a wallet

Once you have created a wallet, you may then add funds to the wallet so Checkbook can send payments to users. To add funds, there are a few steps you need to follow.

  • Create a digital payment
  • Deposit a payment

Create a digital payment

To create a digital paymment, you need to first create a digital payment that can be added to your wallet using the following Checkbook API endpoint:

https://{environment}.checkbook.io/v3/check/digital

All you will need to do is make a POST request to the Checkbook API similar to the example below.

curl --request POST \
  --url https://sandbox.checkbook.io/v3/account/wallet \
  --header 'Authorization: corpkey:corpsecret' \
  --header 'Content-Type: application/json' \
  --data '{ "name": "Inflowing Funds" }'

{
	"account": "0326656181",
	"date": "2023-12-20 21:51:12",
	"id": "8ef114522b7243e6ad46e3f9e9c25e85",
	"name": "Inflowing Funds",
	"routing": "021000021"
}

Deposit a payment

Now that you have created the payment, you need to deposit the payment into the wallet so funds can be made available for payments for users.

Checkbook uses a marketplace owner account's credentials to then send a check to the newly created corporate wallet.

To deposit the payment, make a POST API request to the Checkbook API similar to the example shown below.

curl --request POST \
  --url https://sandbox.checkbook.io/v3/check/deposit/9c2ec0271b7c47da964422f476c800da \
  --header 'Authorization: corpkey:corpsecret' \
  --header 'Content-Type: application/json' \
  --data '{ "account": "8ef114522b7243e6ad46e3f9e9c25e85" }'

{
	"amount": 100.0,
	"date": "2023-12-20 21:58:15",
	"description": null,
	"id": "9c2ec0271b7c47da964422f476c800da",
	"image_uri": "https://checkbook-checks-sandbox.s3.amazonaws.com/883b9d53-8a31-4628-a789-c14456500b97.png",
	"name": "Funds Wallet",
	"number": 5001,
	"recipient": "company_corp",
	"remittance_advice": [],
	"status": "PAID"
}

What is an enhanced wallet?

Unlike a "wallet," an "enhanced wallet" has many of the same features and functionality of a "wallet," but with a few key differences including the ability to:

  • fund the enhanced wallet outside of Checkbook.
  • have a unique account number and routing number. This allows funds to be automatically applied to the enhanced wallet when the funds are received.

You might be asking yourself why you would want an "enhanced wallet" if you already have a wallet with your Checkbook account that you can use to send and receive payments?

One of the key advantages of an "enhanced wallet" is that with this unique routing number and account number, you can automatically apply funds to the wallet balance once funds credit the account, which in turn, can speed up payments. You may also apply funds to the enhanced wallet at any time, including outside of regular business hours.

Note:If you would like to have your Checkbook account enabled for "enhanced wallets," you need to contact Checkbook Support to have your account enabled for this functionality.