GoCardless integration | Zervanor
← All connectors

GoCardless

Also an agent tool
finance-billing

GoCardless Pro API (version 2015-07-06): collect bank-debit (ACH, Bacs, SEPA, BECS, PAD, Autogiro, Betalingsservice) payments. Full documented REST surface — Customers, Customer Bank Accounts, Mandates (create/get/list/update/cancel/reinstate), Payments (create/get/list/update/cancel/retry), Subscriptions (create/get/list/update/cancel), Payouts, Payout Items, Refunds, Events (the audit stream), Creditors, Creditor Bank Accounts, Mandate Imports (+ entries), Billing Requests (+ actions, + flows), Bank Authorisations, Institutions, Redirect Flows (legacy), Tax Rates, and sandbox-only Scenario Simulators. Auth is a Bearer access token with a pinned GoCardless-Version header; live (api.gocardless.com) and sandbox (api-sandbox.gocardless.com) hosts are both modelled. Change notifications arrive as native HMAC-SHA256 signed webhooks whose body wraps an events[] array; each event carries a resource_type + action.

67 actions · 18 triggers

The GoCardless integration lets you connect GoCardless to your automations with 67 actions and 18 triggers — and every action is also a tool an AI agent can call. Examples: List Creditors, Get Creditor, Update Creditor, Create Creditor Bank Account, List Creditor Bank Accounts. No blank-canvas wiring — connect it and use it in your workflows.

Every action below is also a tool an AI agent can call — the same pack powers your workflows and your agents.

Triggers 18

Events in GoCardless that can start a workflow.

webhook

Payment Created

Fires when a payment is created (webhook event resource_type=payments, action=created).

webhook

Payment Confirmed

Fires when a payment is confirmed (resource_type=payments, action=confirmed).

webhook

Payment Paid Out

Fires when a payment is paid out to the creditor (resource_type=payments, action=paid_out).

webhook

Payment Failed

Fires when a payment fails (resource_type=payments, action=failed).

webhook

Payment Cancelled

Fires when a payment is cancelled (resource_type=payments, action=cancelled).

webhook

Mandate Created

Fires when a mandate is created (resource_type=mandates, action=created).

webhook

Mandate Active

Fires when a mandate becomes active (resource_type=mandates, action=active).

webhook

Mandate Cancelled

Fires when a mandate is cancelled (resource_type=mandates, action=cancelled).

webhook

Mandate Failed

Fires when a mandate setup fails (resource_type=mandates, action=failed).

webhook

Mandate Expired

Fires when a mandate expires (resource_type=mandates, action=expired).

webhook

Subscription Created

Fires when a subscription is created (resource_type=subscriptions, action=created).

webhook

Subscription Payment Created

Fires when a subscription generates a payment (resource_type=subscriptions, action=payment_created).

webhook

Subscription Cancelled

Fires when a subscription is cancelled (resource_type=subscriptions, action=cancelled).

webhook

Subscription Finished

Fires when a subscription finishes its schedule (resource_type=subscriptions, action=finished).

webhook

Payout Paid

Fires when a payout is paid to the creditor bank account (resource_type=payouts, action=paid).

webhook

Refund Created

Fires when a refund is created (resource_type=refunds, action=created).

webhook

Refund Paid

Fires when a refund is paid (resource_type=refunds, action=paid).

polling

New GoCardless events (polled)

Polls GET /events on a schedule using a created_at[gt] watermark. Alternative to native webhooks for change notification.

Actions 67

What Zervanor can do in GoCardless.

Billing Requests8

POST

Create Billing Request

Create a billing request — the modern flow to collect a mandate and/or an instant payment (POST /billing_requests). Body wrapped as { "billing_requests": { ... } }.

GET

List Billing Requests

List billing requests (GET /billing_requests). Cursor pagination; filter by customer, status, created_at.

GET

Get Billing Request

Get a billing request by id (GET /billing_requests/{id}).

POST

Collect Customer Details

Collect customer details on a billing request (POST /billing_requests/{id}/actions/collect_customer_details).

POST

Collect Bank Account

Collect bank account details on a billing request (POST /billing_requests/{id}/actions/collect_bank_account).

POST

Confirm Payer Details

Confirm the payer's details on a billing request (POST /billing_requests/{id}/actions/confirm_payer_details).

POST

Fulfil Billing Request

Fulfil a billing request that is ready, creating the mandate and/or payment (POST /billing_requests/{id}/actions/fulfil).

POST

Cancel Billing Request

Cancel a billing request (POST /billing_requests/{id}/actions/cancel).

Mandates6

POST

Create Mandate

Create a mandate against a customer bank account (POST /mandates). Body wrapped as { "mandates": { ... } }.

GET

List Mandates

List mandates (GET /mandates). Cursor pagination; filter by customer, creditor, status, reference, created_at.

GET

Get Mandate

Get a mandate by id (GET /mandates/{id}).

PUT

Update Mandate

Update a mandate's metadata (PUT /mandates/{id}). Body wrapped as { "mandates": { ... } }.

POST

Cancel Mandate

Cancel a mandate so no further payments can be collected against it (POST /mandates/{id}/actions/cancel).

POST

Reinstate Mandate

Reinstate a cancelled mandate (POST /mandates/{id}/actions/reinstate). Only permitted where the scheme allows it.

Payments6

POST

Create Payment

Create a payment against an active mandate (POST /payments). Body wrapped as { "payments": { ... } }.

GET

List Payments

List payments (GET /payments). Cursor pagination; filter by mandate, customer, creditor, subscription, status, charge_date, created_at.

GET

Get Payment

Get a payment by id (GET /payments/{id}).

PUT

Update Payment

Update a payment's metadata (PUT /payments/{id}). Body wrapped as { "payments": { ... } }.

POST

Cancel Payment

Cancel a payment before it is submitted to the banks (POST /payments/{id}/actions/cancel).

POST

Retry Payment

Retry a failed payment (POST /payments/{id}/actions/retry). Only permitted for payments in a retriable state.

Customer Bank Accounts5

POST

Create Customer Bank Account

Create a customer bank account (POST /customer_bank_accounts). Body wrapped as { "customer_bank_accounts": { ... } }.

GET

List Customer Bank Accounts

List customer bank accounts (GET /customer_bank_accounts). Cursor pagination.

GET

Get Customer Bank Account

Get a customer bank account by id (GET /customer_bank_accounts/{id}).

PUT

Update Customer Bank Account

Update a customer bank account's metadata (PUT /customer_bank_accounts/{id}). Body wrapped as { "customer_bank_accounts": { ... } }.

POST

Disable Customer Bank Account

Disable a customer bank account (POST /customer_bank_accounts/{id}/actions/disable).

Subscriptions5

POST

Create Subscription

Create a subscription (recurring payments) against a mandate (POST /subscriptions). Body wrapped as { "subscriptions": { ... } }.

GET

List Subscriptions

List subscriptions (GET /subscriptions). Cursor pagination; filter by customer, mandate, status, created_at.

GET

Get Subscription

Get a subscription by id (GET /subscriptions/{id}).

PUT

Update Subscription

Update a subscription (PUT /subscriptions/{id}). Body wrapped as { "subscriptions": { ... } }.

POST

Cancel Subscription

Cancel a subscription so no further payments are created (POST /subscriptions/{id}/actions/cancel).

Creditor Bank Accounts4

POST

Create Creditor Bank Account

Create a creditor bank account for payouts (POST /creditor_bank_accounts). Body wrapped as { "creditor_bank_accounts": { ... } }.

GET

List Creditor Bank Accounts

List creditor bank accounts (GET /creditor_bank_accounts). Cursor pagination.

GET

Get Creditor Bank Account

Get a creditor bank account by id (GET /creditor_bank_accounts/{id}).

POST

Disable Creditor Bank Account

Disable a creditor bank account (POST /creditor_bank_accounts/{id}/actions/disable).

Customers4

POST

Create Customer

Create a customer (POST /customers). Body wrapped as { "customers": { ... } }.

GET

List Customers

List customers (GET /customers). Cursor pagination; created_at filters supported.

GET

Get Customer

Get a customer by id (GET /customers/{id}).

PUT

Update Customer

Update a customer (PUT /customers/{id}). Body wrapped as { "customers": { ... } }.

Mandate Imports4

POST

Create Mandate Import

Begin a bulk mandate import (POST /mandate_imports). Body wrapped as { "mandate_imports": { ... } }.

GET

Get Mandate Import

Get a mandate import by id (GET /mandate_imports/{id}).

POST

Submit Mandate Import

Submit a mandate import for processing once all entries are added (POST /mandate_imports/{id}/actions/submit).

POST

Cancel Mandate Import

Cancel a mandate import that has not yet been submitted (POST /mandate_imports/{id}/actions/cancel).

Refunds4

POST

Create Refund

Refund a confirmed payment (POST /refunds). Body wrapped as { "refunds": { ... } }.

GET

List Refunds

List refunds (GET /refunds). Cursor pagination; filter by payment, mandate, refund_type, created_at.

GET

Get Refund

Get a refund by id (GET /refunds/{id}).

PUT

Update Refund

Update a refund's metadata (PUT /refunds/{id}). Body wrapped as { "refunds": { ... } }.

Creditors3

GET

List Creditors

List creditors linked to the access token (GET /creditors). Safe read used as the identity + connectivity probe.

GET

Get Creditor

Get a single creditor by id (GET /creditors/{id}).

PUT

Update Creditor

Update a creditor (PUT /creditors/{id}). Body must be wrapped as { "creditors": { ... } }.

Redirect Flows3

POST

Create Redirect Flow

Create a redirect flow — the legacy hosted mandate setup flow (POST /redirect_flows). Body wrapped as { "redirect_flows": { ... } }.

GET

Get Redirect Flow

Get a redirect flow by id (GET /redirect_flows/{id}).

POST

Complete Redirect Flow

Complete a redirect flow after the payer returns, creating the customer, bank account and mandate (POST /redirect_flows/{id}/actions/complete).

Bank Authorisations2

GET

Get Bank Authorisation

Get a bank authorisation by id (GET /bank_authorisations/{id}).

POST

Create Bank Authorisation

Create a bank authorisation for an open-banking flow (POST /bank_authorisations). Body wrapped as { "bank_authorisations": { ... } }.

Billing Request Flows2

POST

Create Billing Request Flow

Create a hosted flow for a billing request that the payer can complete (POST /billing_request_flows). Body wrapped as { "billing_request_flows": { ... } }.

POST

Initialise Billing Request Flow

Initialise a billing request flow to obtain the authorisation URL (POST /billing_request_flows/{id}/actions/initialise).

Events2

GET

List Events

List events — the audit stream of everything that happens on your account (GET /events). Cursor pagination; filter by resource_type, action, mandate, payment, subscription, payout, refund, created_at. This is the polling source for change notifications.

GET

Get Event

Get a single event by id (GET /events/{id}).

Mandate Import Entries2

POST

Create Mandate Import Entry

Add an entry (a customer + bank account + mandate) to a mandate import (POST /mandate_import_entries). Body wrapped as { "mandate_import_entries": { ... } }.

GET

List Mandate Import Entries

List the entries within a mandate import (GET /mandate_import_entries). The mandate_import query parameter is required.

Payouts2

GET

List Payouts

List payouts sent to your creditor bank accounts (GET /payouts). Cursor pagination; filter by creditor, status, payout_type, created_at.

GET

Get Payout

Get a payout by id (GET /payouts/{id}).

Tax Rates2

GET

List Tax Rates

List available tax rates (GET /tax_rates). Cursor pagination; filter by jurisdiction.

GET

Get Tax Rate

Get a tax rate by id (GET /tax_rates/{id}).

Institutions1

GET

List Institutions

List the banks (institutions) available for open-banking flows (GET /institutions). Filter by country_code.

Payout Items1

GET

List Payout Items

List the individual items (payments, refunds, fees) that make up a payout (GET /payout_items). The payout query parameter is required.

Scenario Simulators1

POST

Run Scenario Simulator

Run a sandbox scenario simulator to advance a resource through its lifecycle (POST /scenario_simulators/{id}/actions/run). Sandbox only.

Automations using GoCardless

Build your own automation with GoCardless in the visual builder.

Frequently asked questions

What can I automate with GoCardless?

67 actions are available — for example: List Creditors, Get Creditor, Update Creditor, Create Creditor Bank Account, List Creditor Bank Accounts, and more.

Which GoCardless events can start a workflow?

18 triggers — for example: Payment Created, Payment Confirmed, Payment Paid Out, Payment Failed.

Can GoCardless be used as an AI agent tool?

Yes. Every GoCardless action automatically becomes a tool an AI agent can call — the same pack powers both your workflows and your agents.

How is the GoCardless integration modelled?

GoCardless is modelled as a versioned connector pack, and the steps that need reasoning fall to first-party agents hosted in the same runtime as the workflows.