A Node.js client for the GoCardless API. For full details of the GoCardless API, see the API docs.
$ npm i gocardless-nodejsTo initialise the client, you must provide:
- An access token.
- The environment that this token is for (see here for a list of available environments).
- Any additional options (see here for a list of supported options).
const gocardless = require('gocardless-nodejs');
const constants = require('gocardless-nodejs/constants');
// Initialise the client.
const client = gocardless(
process.env.GC_ACCESS_TOKEN,
constants.Environments.Sandbox,
{ raiseOnIdempotencyConflict: true },
);We'll illustrate the basic library usage by demonstrating on the payment resource.
For a full list of available resources, visit the GoCardless API reference.
const uuidv4 = require('uuid/v4');
// Create a new payment.
const payment = await client.payments.create(
{
amount: 100,
currency: "GBP",
links: { mandate: "MD123" },
},
{ uuidv4() },
);
// List the first three payments past a certain date.
const payments = await client.payments.list({
limit: 3,
created_at: {
gt: '2020-01-01T17:01:06.000Z',
},
});
// Get a payment.
const payment = await client.payments.find('PM123');
// Update a payment.
await client.payments.update('PM123', { amount: '22' });
// Cancel a payment.
await client.payments.cancel('PM123');All resources with a list method will also have an additional *all method. This method acts like the regular list method and accepts the same parameters, but instead returns an async generator.
for await (const payment of client.payments.all()) {
console.log(payment.id);
}raiseOnIdempotencyConflict: set totrueto raise exceptions on idempotency conflicts. Defaults tofalse.