Node.js library for the Checkbook.io API
This library provides convenient access to the Checkbook.io API from applications written in Node.js.
Installation
Install the package with:
npm install checkbook-api --save
Configuration
The package needs to be configured with your account's API Key and API Secret.
:key: The API credentials below are from the test
environment and you can use them to try the API.
var CheckbookAPI = require('checkbook-api');
var Checkbook = new CheckbookAPI({
api_key: 'd6aa2703655f4ba2af2a56202961ca86',
api_secret: 'dXbCgzYBMibj8ZwuQMd2NXr6rtvjZ8',
env: 'test'
});
The env
parameter is optional and can be omitted if the requests are made to the live environment.
The possible values for this parameter are test
or sandbox
and the API credentials need to be from the specified environment.
You can get the API Key and API Secret values from the Settings page.
Usage
You can use the following code snippet to send a digital check:
Checkbook.checks.sendDigitalCheck({
name: 'Widgets Inc.',
recipient: 'widgets@example.com',
description: 'Test Send Check',
amount: 10.00
}, function (error, response) {
if (error) {
console.log('Error:', error);
} else {
console.log('Response:', response);
}
});
You can use the following code snippet to query the list of checks:
Checkbook.checks.list({
page: 1,
per_page: 10,
status: 'UNPAID'
}, function (error, response) {
if (error) {
console.log('Error:', error);
} else {
console.log('Response:', response);
}
});
:star: You can find more code samples here.
Methods reference
The Checkbook
class has several endpoints and you can find below the methods each one provides.
You can click on the :book: icon to access the detailed API reference for each method.
- Checkbook.checks
list(query, callback)
:book:get(check_id, callback)
:book:delete(check_id, callback)
:book:sendDigitalCheck(params, callback[, idempotencyKey])
:book:sendPhysicalCheck(params, callback[, idempotencyKey])
:book:sendMultipleChecksCSV(params, callback[, idempotencyKey])
- Checkbook.invoices
list(query, callback)
:book:get(invoice_id, callback)
:book:delete(invoice_id, callback)
:book:sendInvoice(params, callback[, idempotencyKey])
:book:payInvoice(params, callback[, idempotencyKey])
- Checkbook.subscriptions
list(query, callback)
:book:get(subscription_id, callback)
:book:delete(subscription_id, callback)
:book:update(subscription_id, params, callback)
:book:sendRecurringCheck(params, callback[, idempotencyKey])
:book:sendRecurringInvoice(params, callback[, idempotencyKey])
:book:
- Checkbook.banks
list(callback)
:book:institutions(callback)
:book:delete(bank_id, callback)
:book:instantAccountVerification(params, callback[, idempotencyKey])
:book:addBankAccount(params, callback[, idempotencyKey])
:book:verifyMicrodesposits(params, callback)
:book:
- Checkbook.users
create(params, callback[, idempotencyKey])
:book:update(params, callback)
:book:
:bulb: The query
object used for the list(query, callback)
methods can have the following attributes:
start_date : 'yyyy-mm-dd'
end_date : 'yyyy-mm-dd'
direction : 'INCOMING'|'OUTGOING'
sort: '+NUMBER'|'-NUMBER'|'+TYPE'|'-TYPE'|'+AMOUNT'|'-AMOUNT'|'+STATUS'|'-STATUS'|'+DATE'|'-DATE'|'+DESCRIPTION'|'-DESCRIPTION'
status : 'PAID'|'IN_PROCESS'|'UNPAID'|'VOID'|'EXPIRED'|'PRINTED'|'MAILED'|'FAILED'|'REFUNDED'
q : 'search query'
per_page : 10|25|50
page : [1..N]
type : 'CHECK'|'INVOICE'|'SUBSCRIPTION'
Getting help
If you need help installing or using the library, please contact Checkbook.io Support at support@checkbook.io.
If you've instead found a bug in the library or would like new features added, please open issues or pull requests against this repo.
More Information