← Back to all apps
G

GoCardless

Financial Servicesby GoCardless
Launched Aug 11, 2026 on ChatGPTLaunched Apr 1, 2026 on Claude

Get intelligent, context-aware guidance for building GoCardless payment integrations directly from Claude. The GoCardless MCP provides comprehensive knowledge of API endpoints, integration patterns, webhooks, and code samples across all supported languages. Use it to generate integration code, set up payment pages, handle recurring billing, and follow best practices for error handling and security.

24ChatGPT Tools
2Claude Tools
GoCardlessDeveloper
Financial ServicesCategory

Use Cases

financial-services

Available Tools

Cancel a mandate

cancel_mandate
Full Description

Cancel a mandate. Also known as: stop a direct debit, revoke a mandate, cancel an authorisation.

HIGH-BLAST-RADIUS operation — this also cancels everything attached to the mandate. Two-call pattern: first call with confirmed=false returns a preview enumerating what will be cancelled; second call with confirmed=true executes after the user has explicitly confirmed in their next message. DO NOT pass confirmed=true in the same turn as a preview.

Requirements:

  • Mandate must be in a cancellable state: pending_customer_approval, pending_submission, submitted, or active. Mandates already cancelled, failed, expired, consumed, or blocked cannot be cancelled.
  • Cancellation is irreversible — once cancelled, the mandate cannot be reinstated and the payer would have to set up a new authorisation.

Cascading side effects (will happen automatically):

  • All active subscriptions on this mandate auto-cancel. No further scheduled payments will be created.
  • All pending payments on this mandate auto-cancel (pending_customer_approval, pending_submission). Already-submitted payments continue through the bank.
  • All cancellable instalment schedules on this mandate auto-cancel.
  • The bank authorisation is revoked where the scheme supports it (Frontier-enabled schemes). The payer's bank will no longer permit collections.

The preview enumerates active subscriptions and pending payments so the merchant can see the full blast radius before confirming.

One of mandate_id (single) or mandate_ids (bulk) must be provided.

Bulk cap: mandate_ids accepts up to 10 IDs per call.

  • If the user asks to cancel more than 10 mandates, do NOT call this tool multiple times to work around the cap. Instead: state the 10-per-call limit and ask the user to confirm a specific quantity to proceed with. Wait for their reply before proceeding.
  • When the requested count exceeds 10, process one batch at a time — preview and confirm the first batch, execute it, then preview and confirm the next batch. Do not preview subsequent batches before the previous one has been confirmed and created.

Requires read_write scope.

Parameters (0 required, 4 optional)
Optional
confirmedboolean

Set true only after the user has explicitly confirmed the preview in their most recent message. Default false (returns a preview).

mandate_idstring

ID of the mandate to cancel (e.g. MD000123). Must be in a cancellable state — see description.

mandate_idsarray

For bulk cancellations: list of mandate IDs to cancel (max 10). Use instead of mandate_id.

preview_tokenstring

Required when confirmed=true: the preview_token field from this tool's own preceding preview response (the confirmed=false call for these exact same parameters). Rejected if missing, mismatched, already used, or if confirmed=true arrives too soon after the preview — a preview_token is only valid a few seconds after being issued, since it exists to prove a genuine user reply happened in between, not just that a preview call was made. If confirmed=true is rejected for being too soon, wait for the user's actual next message before trying again; do not immediately retry.

Cancel a payment

cancel_payment
Full Description

Cancel a payment before it is submitted to the bank. Also known as: stop a payment, void a payment, withdraw a payment.

Two-call pattern: first call with confirmed=false returns a preview; second call with confirmed=true executes after the user has explicitly confirmed in their next message. DO NOT pass confirmed=true in the same turn as a preview. Requirements:

  • Payment must be in a cancellable state: pending_customer_approval or pending_submission. Payments that are submitted, confirmed, paid_out, failed, cancelled, or charged_back cannot

be cancelled.

  • Cancellation is irreversible — once cancelled, the payment cannot be reinstated.

Important side effects (or lack thereof):

  • Cancelling a payment that belongs to a subscription does NOT cancel the subscription. The subscription will continue to generate future payments on its schedule. If the merchant

wants to stop future payments, the subscription must be cancelled separately.

  • Cancellation does not affect the mandate; the mandate remains active.

One of payment_id (single) or payment_ids (bulk) must be provided.

Bulk cap: payment_ids accepts up to 10 IDs per call.

  • If the user asks to cancel more than 10 payments, do NOT call this tool multiple times to work around the cap. Instead: state the 10-per-call limit and ask the user to confirm a specific quantity to proceed with. Wait for their reply before proceeding.
  • When the requested count exceeds 10, process one batch at a time — preview and confirm the first batch, execute it, then preview and confirm the next batch. Do not preview subsequent batches before the previous one has been confirmed and created.

Requires read_write scope.

Parameters (0 required, 4 optional)
Optional
confirmedboolean

Set true only after the user has explicitly confirmed the preview in their most recent message. Default false (returns a preview).

payment_idstring

ID of the payment to cancel (e.g. PM000123). Must be in pending_customer_approval or pending_submission state.

payment_idsarray

For bulk cancellations: list of payment IDs to cancel (max 10). Use instead of payment_id.

preview_tokenstring

Required when confirmed=true: the preview_token field from this tool's own preceding preview response (the confirmed=false call for these exact same parameters). Rejected if missing, mismatched, already used, or if confirmed=true arrives too soon after the preview — a preview_token is only valid a few seconds after being issued, since it exists to prove a genuine user reply happened in between, not just that a preview call was made. If confirmed=true is rejected for being too soon, wait for the user's actual next message before trying again; do not immediately retry.

Create a payment against a mandate

create_payment
Full Description

Create a one-off payment against an existing mandate. Also known as: take a payment, charge a customer, collect a payment, debit a customer.

Two-call pattern: first call with confirmed=false returns a preview; second call with confirmed=true executes after the user has explicitly confirmed in their next message. DO NOT pass confirmed=true in the same turn as a preview.

Requirements:

  • Mandate must be in pending_submission, submitted, or active state. Inactive mandates (blocked, cancelled, expired, failed) will be rejected.
  • Payment currency MUST match the mandate's currency.
  • charge_date must respect the scheme's minimum working-days notice:
    • Bacs: 3 working days (default), 1 working day (absolute minimum).
    • SEPA Core, PAD, Autogiro, Betalingsservice: 1 working day.
    • Faster Payments, ACH, BECS, BECS_NZ: 0 working days (same-day OK).

If charge_date is omitted, the mandate's next_possible_charge_date is used.

  • If the mandate has payments_require_approval=true, the payment will land in pending_customer_approval and won't be submitted to the bank until the payer approves.

Bulk cap: count accepts up to 25 per call.

  • If the user asks for a specific number ≤ 25, pass it directly.
  • If the user asks for more than 25 (e.g. "create 100 payments"), do NOT call this tool multiple times to work around the cap. Instead: state the 25-per-call limit and ask the user to confirm a specific quantity to proceed with. Wait for their reply before proceeding.
  • If multiple batches are needed, process ONE batch per user reply — this means one preview call, then one confirm call, then report and wait. Do not call this tool more than once per user reply even for previews. Never pre-load multiple previews across batches before asking for approval.

Requires read_write scope. Idempotency keys remain valid for 31 days.

Parameters (3 required, 8 optional)
Required
amountnumber

Amount in minor units (e.g. pence for GBP, cents for USD).

currencystring

ISO 4217 currency code. Must match the mandate's currency.

mandate_idstring

ID of the mandate to charge (e.g. MD000123). Must be in pending_submission, submitted, or active state.

Optional
charge_datestring

Optional charge date (YYYY-MM-DD). Omit to use the next possible charge date for the mandate.

confirmedboolean

Set true only after the user has explicitly confirmed the preview in their most recent message. Default false (returns a preview).

countnumber

Number of identical payments to create against the same mandate (max 25, default 1). When >1, returns a bulk preview before executing.

descriptionstring

Optional name for the payment shown in the GoCardless dashboard and on payer confirmation emails. Helps merchants and payers identify the payment (e.g. "Admin fee", "Invoice 123").

faster_achboolean

ACH only. Set true to explicitly use Faster ACH, false for standard ACH. Omit to let the presence or absence of charge_date determine the processing speed.

preview_tokenstring

Required when confirmed=true: the preview_token field from this tool's own preceding preview response (the confirmed=false call for these exact same parameters). Rejected if missing, mismatched, already used, or if confirmed=true arrives too soon after the preview — a preview_token is only valid a few seconds after being issued, since it exists to prove a genuine user reply happened in between, not just that a preview call was made. If confirmed=true is rejected for being too soon, wait for the user's actual next message before trying again; do not immediately retry.

referencestring

Custom bank statement reference. Scheme-specific length limits apply (e.g. 10 chars for Bacs, 140 for SEPA). Not supported for Faster Payments. Bacs custom references require GoCardless Plus/Pro/Enterprise.

retry_if_possibleboolean

Automatically retry the payment on failure using intelligent retries. Requires Success+ to be enabled in the GoCardless dashboard. Default false.

Create a payment link

create_payment_link
Full Description

Create a Billing Request — a single-use GoCardless-hosted authorisation link for one payer. Also known as: payment link, authorisation link, send a payment request.

Note: this tool creates a GoCardless-hosted payment page. CPP merchants building their own payment UI should call the billing requests API with actions directly rather than using this tool.

IMPORTANT: Any fixed payment amount on a Billing Request is collected via IBP (Instant Bank Pay) only — faster_payments, pay_to, or sepa_credit_transfer. Direct Debit does NOT support a one-off fixed amount within the BR flow itself.

If a merchant asks to collect a one-off payment and does not specify IBP, ask which they prefer:

  • IBP (instant, settles in ~1 business day): use payment_only=true or the combined flow.
  • Direct Debit (3–5 days for Bacs, etc.): use mandate-only (no amount), then call create_payment

once the mandate is active. This requires two steps — confirm the merchant is happy to wait. Do NOT assume IBP. Always clarify before proceeding if the collection method is ambiguous.

Workflows (choose one):

  • Mandate-only (DD setup, charge later via create_payment): scheme only, no amount.

Schemes: bacs, sepa_core, ach, pad, becs, becs_nz, autogiro, betalingsservice.

  • Payment-only / IBP (instant one-off, no mandate): scheme + amount + currency + payment_only=true.

Schemes: faster_payments, pay_to, sepa_credit_transfer.

  • Combined (mandate + immediate IBP payment): scheme + amount + currency.

Default IBP scheme is inferred from currency. To use a different IBP scheme for the payment than the mandate (e.g. bacs mandate + faster_payments payment), pass payment_request_scheme explicitly.

  • VRP consent (variable recurring payments, mandate-only on faster_payments):

scheme=faster_payments + constraints_max_amount_per_payment + periodic_limit_period + periodic_limit_max_total_amount. For sVRP (sweeping between own accounts) also pass sweeping=true. For cVRP (merchant-initiated) also pass purpose_code, payment_context_code, and payment_purpose_code.

Currency maps 1:1 to scheme: bacs/faster_payments=GBP, sepa_core/sepa_credit_transfer=EUR, ach=USD, pad=CAD, becs/pay_to=AUD, becs_nz=NZD, autogiro=SEK, betalingsservice=DKK.

Use create_payment_link (this tool) when: the payer is a specific known customer, the merchant needs VRP (Variable Recurring Payments via faster_payments mandate scheme), or the merchant is building a CPP (Custom Payment Page) flow. Use create_payment_template_link instead when: the merchant wants a permanent reusable link to embed in a website or email for multiple customers (BRT does not support VRP).

Do NOT ask for redirect_uri unless the merchant mentions a post-payment landing page. Returns an authorisation URL. Requires read_write scope.

Parameters (1 required, 20 optional)
Required
schemestring

Payment scheme for the mandate (or for IBP when payment_only=true). Examples: faster_payments, bacs, sepa_core, ach, pad, becs, pay_to.

Optional
amountnumber

Amount in minor units (e.g. pence for GBP). Required when payment_only=true.

constraints_end_datestring

Latest date by which payments can be taken (YYYY-MM-DD). Leave unset for an open-ended agreement.

constraints_max_amount_per_paymentnumber

Maximum amount in minor units that can be charged per payment. Required for PayTo and VRP mandates.

constraints_start_datestring

Earliest date from which payments can be taken (YYYY-MM-DD). Defaults to the day the payer authorises.

currencystring

ISO 4217 currency code. Required when amount is set.

customer_bank_account_idstring

Existing GoCardless customer bank account ID to pre-fill, skipping the bank account collection step.

customer_idstring

Existing GoCardless customer ID to link, optional.

descriptionstring

Description shown to the payer during authorisation.

fallback_enabledboolean

If true, the billing request can fall back to Direct Debit if the payer's bank does not support the requested scheme (IBP or VRP). Applies to both IBP payment requests and VRP mandate requests. Do not set if GoCardless payment intelligence is enabled.

mandate_verifystring

Verification preference for the mandate: minimum, recommended (default), when_available, or always.

payment_context_codestring

Payment context for cVRP mandates. One of: billing_goods_and_services_in_advance, billing_goods_and_services_in_arrears, pisp_payee, ecommerce_merchant_initiated_payment, face_to_face_point_of_sale, transfer_to_self, transfer_to_third_party, bill_payment, ecommerce_goods, ecommerce_services, other, party_to_party. Required for cVRP.

payment_onlyboolean

Set true for a payment-only (IBP) flow — no mandate will be created. Requires amount and currency.

payment_purpose_codestring

Underlying payment purpose for cVRP mandates (e.g. loan_repayment, bank_loan_delayed_draw_funding, salary_payment). See VRP Commercial Payment Purpose Codes for the full list. Required for cVRP.

payment_request_schemestring

Override the IBP scheme used for the payment_request in a combined flow. Omit to let the API infer from currency. Only valid when amount is set and payment_only=false.

periodic_limit_alignmentstring

How the period resets: calendar (end of current period, e.g. end of month) or creation_date (same date next period). Defaults to creation_date.

periodic_limit_max_total_amountnumber

Maximum total amount in minor units that can be charged within the periodic_limit_period. Required for VRP mandates.

periodic_limit_periodstring

Period for the VRP periodic limit. One of: intraday, day, week, fortnight, month, quarter, half_year, year, flexible. Required when setting a periodic limit.

purpose_codestring

High-level purpose category for the mandate and/or payment. Common values: loan, salary_payment, supplier_payment, tax_payment, commercial, consumer, dividend, pension_payment. See Billing Request Purpose Codes for the full list.

redirect_uristring

URL to redirect the payer to after they complete the GoCardless-hosted flow. This is the post-flow landing page — not the bank authorisation redirect used in CPP flows. Omit to use the GoCardless default success screen.

sweepingboolean

Set true for sVRP (Sweeping VRP) — money moved between accounts owned by the same payer. Only valid for faster_payments mandate-only flows; do not combine with payment_only=true.

Create a payment template link

create_payment_template_link
Full Description

Create a reusable Billing Request Template — a permanent shareable link that creates a new customer session each time it is visited. Also known as: payment template, reusable payment link, shareable payment page.

Use this tool when the same link will be sent to more than one customer. Use create_payment_link instead if you need VRP, or want to pre-fill a specific returning customer's details.

Key differences from create_payment_link:

  • Reusable: the same URL can be visited by unlimited customers; each visit creates a new session.
  • No specific customer at creation time — the customer provides their details when they visit the link.
  • Does NOT support VRP (Variable Recurring Payments). faster_payments cannot be used as a mandate scheme.
  • payment_request_scheme is limited to faster_payments, sepa_credit_transfer, sepa_instant_credit_transfer.

pay_to is NOT available as a payment scheme on a BRT.

  • payment_request_amount is in full decimal form (e.g. "25.00"), not minor units.

Workflows (choose one):

  • Mandate-only (DD setup only): mandate_request_scheme required; no payment fields.

Schemes: bacs, sepa_core, ach, pad, becs, becs_nz, autogiro, betalingsservice, pay_to, sepa_credit_transfer.

  • Payment-only (one-off IBP payment, no mandate): payment_request_scheme + amount + currency; no mandate fields.

Schemes: faster_payments, sepa_credit_transfer, sepa_instant_credit_transfer.

  • Combined (mandate + one-off IBP payment): both mandate and payment fields.

Currency maps 1:1 to scheme: bacs=GBP, sepa_core/sepa_credit_transfer=EUR, ach=USD, pad=CAD, becs/pay_to=AUD, becs_nz=NZD, autogiro=SEK, betalingsservice=DKK, faster_payments=GBP.

Returns a permanent authorisation URL. Requires read_write scope.

Parameters (1 required, 10 optional)
Required
namestring

Name for this template shown in the dashboard (max 255 chars).

Optional
mandate_request_currencystring

ISO 4217 currency code for the mandate (e.g. GBP, EUR). Usually inferred from scheme.

mandate_request_descriptionstring

Description shown to the customer during mandate setup.

mandate_request_schemestring

Scheme for the mandate. Supported: bacs, sepa_core, ach, pad, becs, becs_nz, autogiro, betalingsservice, pay_to, sepa_credit_transfer. Note: faster_payments is blocked (use create_payment_link for VRP).

mandate_request_verifystring

Verification preference for the mandate: minimum, recommended (default), when_available, or always.

metadataobject

Key-value store of custom data for the template. Up to 3 keys, key names up to 50 chars, values up to 500 chars.

payment_request_amountstring

Amount for the one-off payment in full decimal form (e.g. "25.00"), NOT minor units. Required when payment_request_scheme is set.

payment_request_currencystring

ISO 4217 currency code for the one-off payment. Required when payment_request_amount is set.

payment_request_descriptionstring

Description shown to the customer during payment authorisation.

payment_request_schemestring

Scheme for the one-off payment. Limited to: faster_payments, sepa_credit_transfer, sepa_instant_credit_transfer. pay_to is not supported.

redirect_uristring

URL to redirect the customer to after they complete the flow. Omit to use the GoCardless default success screen.

Create Refund

create_refund
Full Description

Permission required: refunds:write. Ask the user to reconnect GoCardless and grant this permission to enable this tool.

Create a subscription

create_subscription
Full Description

Create a recurring subscription against a mandate. Also known as: set up recurring payments, set up a direct debit, schedule regular payments.

Two-call pattern: first call with confirmed=false returns a preview; second call with confirmed=true executes after the user has explicitly confirmed in their next message. DO NOT pass confirmed=true in the same turn as a preview.

Supported schemes: bacs, sepa_core, ach, becs, becs_nz, betalingsservice, autogiro, pad, pay_to. IBP schemes do not support subscriptions: faster_payments, sepa_credit_transfer, sepa_instant_credit_transfer.

Scheduling rules:

  • interval_unit=monthly: day_of_month required (1–28, or -1 for last day of month).
  • interval_unit=yearly: both month (e.g. january) and day_of_month required.
  • interval_unit=weekly: day_of_month and month must not be set.
  • interval defaults to 1 if omitted.
  • start_date must be on or after the mandate's next_possible_charge_date. Defaults to next_possible_charge_date if omitted.

payment_reference for Bacs: requires own Service User Number; the mandate reference + dash + payment_reference must be ≤ 18 characters combined. retry_if_possible: requires Success+ to be enabled in the GoCardless dashboard.

Bulk cap: mandate_ids accepts up to 25 IDs per call (creates the same subscription config for each mandate).

  • If the user asks to create subscriptions for more than 25 mandates, do NOT call this tool multiple times to work around the cap. Instead: state the 25-per-call limit and ask the user to confirm a specific quantity to proceed with. Wait for their reply before proceeding.
  • When the requested count exceeds 25, process one batch at a time — preview and confirm the first batch, execute it, then preview and confirm the next batch. Do not preview subsequent batches before the previous one has been confirmed and created.

Requires read_write scope. Idempotency keys remain valid for 31 days.

Parameters (3 required, 13 optional)
Required
amountnumber

Amount per payment in minor units (e.g. pence for GBP, cents for EUR).

currencystring

ISO 4217 currency code (e.g. GBP, EUR, USD). Must match the mandate's scheme.

interval_unitstring

Time unit between charges: weekly, monthly, or yearly.

Optional
confirmedboolean

Set true only after the user has explicitly confirmed the preview in their most recent message. Default false (returns a preview).

countnumber

Total number of payments to take. Omit (or set 0) for an indefinite subscription.

day_of_monthnumber

Day of month to charge (1–28, or -1 for last day). Required for monthly and yearly subscriptions.

intervalnumber

Number of interval_units between charges. Must be ≥ 1. Defaults to 1.

mandate_idstring

ID of the mandate to create the subscription against (e.g. MD000123).

mandate_idsarray

For bulk creation: list of mandate IDs to create the subscription against (max 25). Use instead of mandate_id.

metadataobject

Key-value store of custom data. Up to 3 keys, key names up to 50 chars, values up to 500 chars.

monthstring

Month to charge, lowercase (e.g. january). Required for yearly subscriptions.

namestring

Name for the subscription (max 255 chars). Used as the description on each payment created.

payment_referencestring

Reference shown on the customer's bank statement. For Bacs: requires own Service User Number.

preview_tokenstring

Required when confirmed=true: the preview_token field from this tool's own preceding preview response (the confirmed=false call for these exact same parameters). Rejected if missing, mismatched, already used, or if confirmed=true arrives too soon after the preview — a preview_token is only valid a few seconds after being issued, since it exists to prove a genuine user reply happened in between, not just that a preview call was made. If confirmed=true is rejected for being too soon, wait for the user's actual next message before trying again; do not immediately retry.

retry_if_possibleboolean

Retry failed payments using intelligent retries (Success+). Defaults to false. Requires Success+ enabled in the GoCardless dashboard.

start_datestring

Date of the first payment (YYYY-MM-DD). Must be on or after the mandate's next_possible_charge_date. Defaults to next_possible_charge_date if omitted.

Get a single customer by ID

get_customer
Full Description

Retrieve a single customer by ID. PII fields are partially masked. Use when you have a known customer ID (CU…). To search or list multiple customers, use list_customers.

Parameters (1 required)
Required
idstring

Customer ID (e.g. CU000123)

Get current environment and switching guide

get_environment
Full Description

Returns the current GoCardless environment (sandbox or live) and step-by-step instructions for switching. Use this when the user asks which environment they are in, wants to switch to live, wants to switch to sandbox, or seems confused about whether they are looking at real or test data.

Get a single mandate by ID

get_mandate
Full Description

Retrieve a single mandate (Direct Debit authorisation) by ID. Use when you have a known mandate ID (MD…). To search or filter across mandates, use list_mandates.

Parameters (1 required)
Required
idstring

Mandate ID (e.g. MD000123)

Get a single payment by ID

get_payment
Full Description

Retrieve a single payment by ID. Use when you have a known payment ID (PM…). To search or filter across multiple payments, use list_payments.

Parameters (1 required)
Required
idstring

Payment ID (e.g. PM000123)

Get a single payout by ID

get_payout
Full Description

Retrieve a single payout (settlement to your bank account) by ID. Use when you have a known payout ID (PO…). To search or filter across payouts, use list_payouts.

Parameters (1 required)
Required
idstring

Payout ID (e.g. PO000123)

Get Refund

get_refund
Full Description

Permission required: refunds:read. Ask the user to reconnect GoCardless and grant this permission to enable this tool.

Get a single subscription by ID

get_subscription
Full Description

Retrieve a single subscription (recurring payment schedule) by ID. Use when you have a known subscription ID (SB…). To search or filter across subscriptions, use list_subscriptions.

Parameters (1 required)
Required
idstring

Subscription ID (e.g. SB000123)

Integrate With Gocardless

integrate_with_gocardless
Full Description

Returns an overview of GoCardless integration options for collecting one-off and recurring bank payments. This tool returns an overview only — you MUST then call read_gocardless_resource with the relevant URI from the overview before answering the user's question.

List customers with filters

list_customers
Full Description

List customers, optionally filtered by creation date. PII fields are partially masked. For a single known customer ID, use get_customer.

Parameters (0 required, 5 optional)
Optional
afterstring

Cursor for the next page. If the previous response's next_cursor was non-empty, call this tool again with after=<that value> to fetch the next page. Repeat until next_cursor is absent — do not stop after the first page and present it as complete.

created_at_gtestring

Filter: created at or after this ISO 8601 datetime

created_at_ltestring

Filter: created at or before this ISO 8601 datetime

limitnumber

Number of results per page (default 50, max 500)

sort_directionstring

Sort direction: asc or desc

List events with filters

list_events
Full Description

Audit log of state changes across all resources (e.g. payment confirmed, mandate cancelled). Use for audit trails and webhook debugging. Not for querying amounts or counts — use list_payments for that. Note: data older than 18 months may not be available.

Parameters (0 required, 11 optional)
Optional
actionstring

Filter by action (e.g. created, confirmed, failed, paid_out, cancelled)

afterstring

Cursor for the next page. If the previous response's next_cursor was non-empty, call this tool again with after=<that value> to fetch the next page. Repeat until next_cursor is absent — do not stop after the first page and present it as complete.

created_at_gtestring

Filter: created at or after this ISO 8601 datetime

created_at_ltestring

Filter: created at or before this ISO 8601 datetime

limitnumber

Number of results per page (default 50, max 500)

mandatestring

Filter by mandate ID

paymentstring

Filter by payment ID

payoutstring

Filter by payout ID

refundstring

Filter by refund ID

resource_typestring

Filter by resource type: payments, mandates, payouts, refunds, subscriptions, instalment_schedules

subscriptionstring

Filter by subscription ID

List mandates with filters

list_mandates
Full Description

Search or filter mandates (Direct Debit authorisations) by status, customer, or scheme. For a single known mandate ID, use get_mandate.

Parameters (0 required, 5 optional)
Optional
afterstring

Cursor for the next page. If the previous response's next_cursor was non-empty, call this tool again with after=<that value> to fetch the next page. Repeat until next_cursor is absent — do not stop after the first page and present it as complete.

customerstring

Filter by customer ID

limitnumber

Number of results per page (default 50, max 500)

schemestring

Filter by scheme: bacs, sepa_core, ach, autogiro, becs, becs_nz, betalingsservice, faster_payments, pad, pay_to

statusstring

Filter by status: pending_customer_approval, pending_submission, submitted, active, suspended_by_payer, failed, cancelled, expired, consumed, blocked

List payments with filters

list_payments
Full Description

Search, filter, or count payments by status, customer, mandate, subscription, currency, or date range. Use for any multi-record query. For a single known payment ID, use get_payment.

Parameters (0 required, 10 optional)
Optional
afterstring

Cursor for the next page. If the previous response's next_cursor was non-empty, call this tool again with after=<that value> to fetch the next page. Repeat until next_cursor is absent — do not stop after the first page and present it as complete.

created_at_gtestring

Filter: created at or after this ISO 8601 datetime

created_at_ltestring

Filter: created at or before this ISO 8601 datetime

currencystring

Filter by currency code (e.g. GBP, EUR, USD)

customerstring

Filter by customer ID (e.g. CU000123)

limitnumber

Number of results per page (default 50, max 500)

mandatestring

Filter by mandate ID (e.g. MD000123)

sort_directionstring

Sort direction: asc or desc

statusstring

Filter by status: pending_submission, submitted, confirmed, paid_out, cancelled, customer_approval_denied, failed, charged_back

subscriptionstring

Filter by subscription ID (e.g. SB000123)

List payouts with filters

list_payouts
Full Description

Search or filter payouts (settlements to your bank account) by status, currency, or date range. For a single known payout ID, use get_payout.

Parameters (0 required, 6 optional)
Optional
afterstring

Cursor for the next page. If the previous response's next_cursor was non-empty, call this tool again with after=<that value> to fetch the next page. Repeat until next_cursor is absent — do not stop after the first page and present it as complete.

created_at_gtestring

Filter: created at or after this ISO 8601 datetime

created_at_ltestring

Filter: created at or before this ISO 8601 datetime

currencystring

Filter by currency code (e.g. GBP, EUR, USD)

limitnumber

Number of results per page (default 50, max 500)

statusstring

Filter by status: pending, paid, bounced

List Refunds

list_refunds
Full Description

Permission required: refunds:read. Ask the user to reconnect GoCardless and grant this permission to enable this tool.

List subscriptions with filters

list_subscriptions
Full Description

Search or filter subscriptions (recurring payment schedules) by status, customer, or mandate. For a single known subscription ID, use get_subscription.

Parameters (0 required, 5 optional)
Optional
afterstring

Cursor for the next page. If the previous response's next_cursor was non-empty, call this tool again with after=<that value> to fetch the next page. Repeat until next_cursor is absent — do not stop after the first page and present it as complete.

customerstring

Filter by customer ID

limitnumber

Number of results per page (default 50, max 500)

mandatestring

Filter by mandate ID

statusstring

Filter by status: pending_customer_approval, active, cancelled, finished, paused

Read Gocardless Resource

read_gocardless_resource
Full Description

Serves GoCardless API documentation, how-to guides, and code samples — not live account data. Use this to fetch API endpoint details, integration guides, and code samples. Available URIs:

  • gocardless://api/endpoints — list of all API endpoints
  • gocardless://api/endpoints/{name} — details of a specific endpoint
  • gocardless://api/code_samples/{language} — all code samples for a language (java, python, ruby, dotnet, php, go, javascript, http)
  • gocardless://api/code_samples/{language}/{endpoint} — code samples for a specific endpoint in a language
  • gocardless://how_to/collect_one-off_payments
  • gocardless://how_to/collect_recurring_payments
  • gocardless://how_to/create_reusable_payment_templates
  • gocardless://how_to/handle_webhooks
  • gocardless://how_to/use_billing_request_with_actions
  • gocardless://how_to/use_custom_payment_pages
Parameters (1 required)
Required
uristring

The gocardless:// resource URI to read

Submit feedback about this MCP session

submit_feedback
Full Description

Submit a rating (1–5) of how helpful this MCP session was. Call this at the end of a session when the user expresses satisfaction or dissatisfaction, or when they explicitly ask to leave feedback.

Parameters (1 required, 1 optional)
Required
ratingnumber

How helpful was this session? 1 = not helpful at all, 5 = extremely helpful

Optional
commentstring

Optional additional feedback