# GoCardless MCP

> GoCardless handles direct debit collections and recurring billing straight from your bank account. This MCP lets you manage customer mandates, initiate one-off payments, and check payment statuses automatically—all through conversation. Stop manually tracking failed payments or digging through bank files; get real-time financial oversight with automated mandate management.

## Overview
- **Category:** money-moves
- **Price:** Free
- **Tags:** direct-debit, recurring-payments, bank-transfers, payment-automation, mandate-management, fintech

## Description

Managing subscription payments shouldn't feel like a full-time job for your finance team. This connector lets you connect directly to your GoCardless account, giving your AI agent total control over recurring billing and direct debit collections. Need to know if a customer’s payment authorization is active? You can check the detailed status of all mandates. Want to trigger a one-off charge or manage an entire subscription plan cycle? Your agent handles that with simple prompts. It also keeps you in the loop on your cash flow by letting you view payout creditor details and monitor system activity logs. Everything—from adding new payers to canceling pending charges—is accessible right where you work, through any MCP-compatible client like Claude or Cursor. If your current platform doesn't give you this level of control over bank payments, connecting via Vinkius gives you full visibility and automation without needing a dedicated integration layer.

## Tools

### stop_pending_payment
Cancels a payment attempt before it is processed by the banks, preventing accidental charges.

### create_new_customer
Adds an entirely new payer to the account system using basic customer information.

### collect_payment
Triggers a new, immediate bank debit collection for a specified amount.

### get_customer_details
Retrieves specific contact and payment details for a known customer.

### get_mandate_details
Fetches comprehensive information about an existing customer's payment authorization mandate.

### get_payment_status
Checks the current state of any specific transaction ID (e.g., confirmed, failed, pending).

### list_account_creditors
Lists all designated payout recipients and their associated creditor details.

### list_customers
Retrieves a directory listing of all bank payers in the system, including basic contact info.

### list_system_events
Gathers a chronological log of every significant activity that has happened within the account.

### list_active_mandates
Provides a list of all currently active payment authorizations attached to payers.

### list_payment_history
Generates a full report listing every single past transaction that has occurred through the account.

### list_recurring_payments
Lists all active and scheduled subscription plans, showing their next billing date.

## Prompt Examples

**Prompt:** 
```
List my last 5 GoCardless customers with their email addresses.
```

**Response:** 
```
I've retrieved your latest customers. Notable entries include 'John Smith' (john@example.com) and 'Sarah Jane' (sarah@example.com). Would you like to check the active mandates for any of them?
```

**Prompt:** 
```
Collect 25.00 EUR from mandate 'MD_123' for 'Monthly Fee'.
```

**Response:** 
```
Payment triggered! I've initiated a collection of 25.00 EUR from mandate MD_123. The transaction ID is 'PM_987'. I'll monitor the status and let you know when it's confirmed.
```

**Prompt:** 
```
Check the status of payment ID 'PM_987'.
```

**Response:** 
```
Checking status... Payment PM_987 is currently 'Pending Submission'. It's scheduled to be sent to the banks tomorrow. Would you like me to alert you if the status changes to 'Confirmed'?
```

## Capabilities

### Manage Payer Records
Add new customers to the system or retrieve specific contact information and payment history for existing payers.

### Verify Payment Authorizations
Check the current status of a customer's mandate, ensuring you have reliable authority before attempting any collection.

### Automate Collections
Initiate new bank debit collections or manage complex subscription payment runs using natural language commands.

### Track Transaction Lifecycle
Get the real-time status of any transaction, whether it's pending submission, confirmed, or failed.

### Audit System Activity
Review comprehensive logs of all system events and access detailed payout creditor information to maintain cash flow oversight.

### Control Pending Payments
Programmatically cancel payments that haven't gone through yet, or check the state of a specific transaction for immediate confirmation.

## Use Cases

### Quarterly Billing Cycle Check
A billing manager needs to ensure all quarterly subscription fees are due. They ask their agent to run through the list of active subscriptions using `list_recurring_payments` and then check the mandate status for any payer whose authorization might be stale using `get_mandate_details`.

### Investigating a Failed Payment
A customer reports an unexpected charge failure. Instead of calling support, they ask their agent to run the payment ID through `get_payment_status`. This immediately tells them if the issue is pending submission or permanently failed.

### Adding a New Client
A sales rep signs a new client. The ops engineer uses the agent to first create the payer record via `create_new_customer`, and then verify that all necessary details are logged by checking their payment history through `list_payment_history`.

### Reviewing Payouts
A finance analyst needs to reconcile payments made to partners. They ask the agent to list all payout recipients using `list_account_creditors` and then pull a detailed activity log with `list_system_events`.

## Benefits

- Automate collections by triggering payments directly. Instead of manually initiating charges, you simply ask your agent to run a collection using the `collect_payment` tool.
- Cut down on reconciliation time. You can pull a full payment history report instantly with `list_payment_history`, letting you compare data against internal ledgers without copy-pasting anything.
- Improve compliance visibility. The `list_system_events` tool gives you an immutable, chronological log of everything that happens in the account, making audits simple and fast.
- Verify mandates before charging. Before attempting any payment, use `get_mandate_details` to confirm that the customer's authorization is still active and valid. This prevents failed payments.
- Control your cash flow proactively. If a payment fails or needs adjustment, you can check its status with `get_payment_status` or even halt it entirely using `stop_pending_payment`.

## How It Works

The bottom line is that your AI agent treats this MCP as its dedicated payment operations console, allowing complex financial tasks without manual platform navigation.

1. Subscribe to this MCP and retrieve your Access Token from GoCardless (under Developers).
2. Specify whether you're using a live or sandbox environment in the configuration.
3. Your AI client can then manage bank payments by requesting actions, like checking customer details or initiating collections.

## Frequently Asked Questions

**How do I check if a customer mandate is active using get_mandate_details?**
You provide the specific mandate ID to the agent. It returns detailed authorization information, telling you exactly what status the payment authority currently holds.

**Can I see all my transactions in one place with list_payment_history?**
Yes. Running `list_payment_history` gathers every single transaction recorded through your account, giving you a complete audit trail without needing to pull reports manually.

**What if I need to cancel an upcoming charge? Do I use stop_pending_payment?**
Yes. Use `stop_pending_payment` and provide the transaction ID. This cancels the debit attempt before it ever reaches the bank, preventing unnecessary fees or confusion.

**How do I list all my active subscriptions with list_recurring_payments?**
Just ask the agent to run `list_recurring_payments`. It gives you a clean list of every subscription plan and when they are next scheduled to bill.

**If I need to onboard a new payer, how do I use `create_new_customer`?**
You pass the necessary details to create a fresh customer record. This ensures that when you run future collections or mandate setups, your system has accurate, verified payer information right away.

**After triggering a debit with `collect_payment`, how do I check its status using `get_payment_status`?**
Just provide the unique transaction ID to get real-time state data. This tells you immediately if the charge is pending, confirmed, or failed, which helps you diagnose payment issues fast.

**How do I use `list_account_creditors` to view my payout recipients?**
The tool pulls a comprehensive list of all configured payout accounts tied to your system. This is crucial for reconciling who received funds and ensuring accurate cash flow reporting.

**I need an overview before billing; how do I use `list_active_mandates`?**
This function retrieves a complete list of all currently authorized mandates. It's the best way to audit your payment authorizations and confirm you have the necessary permissions for bulk collections.

**How do I find my Access Token?**
Log in to your GoCardless dashboard, navigate to **Developers** > **Create** > **Access Token**, and generate a token with the required permissions.

**Can I collect a payment in a different currency?**
Yes! The `collect_payment` tool accepts a `currency` parameter (e.g., GBP, EUR, USD). Ensure the customer's mandate supports the requested currency.

**What happens if I try to cancel a payment that was already submitted?**
If a payment has already been submitted to the banking system, the `stop_pending_payment` tool will return an error as the transaction can no longer be halted.