gocardless-pro
A client library for the GoCardless API.
What it is and what it does
gocardless-pro is a Python client for the GoCardless payment API, which specializes in direct debit processing across SEPA and BACS schemes. It wraps the GoCardless REST API, providing object-oriented access to customers, payments, mandates, billing requests, and related resources. The client automatically adds idempotency keys to resource-creation requests to prevent accidental duplicates if network failures occur.
Beyond basic CRUD operations, the library includes webhook handling with cryptographic signature validation—you can parse incoming webhook notifications, verify they genuinely came from GoCardless, and extract event objects for automatic actions (e.g., suspending a membership when a mandate is cancelled). Rate limit headers are also exposed so you can monitor your quota. The package is actively maintained, supports modern Python versions (3.9–3.12, back-compatible to 3.6), and has only one external dependency (requests).
Use it for:
- Build a subscription billing system that collects recurring payments via direct debit mandates.
- Validate and process webhook events from GoCardless to update local payment records and trigger business logic.
- Create and manage customer bank account details and billing requests through the GoCardless API.
- Fetch payment history and reconcile transactions by querying payments and balances.
- Implement mandate PDF generation in multiple languages for customer sign-off.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
A Python client library for the GoCardless API that handles direct debit payments, mandates, billing requests, and webhook processing with built-in idempotency and signature validation.
Yes. The package is actively maintained (released 1 day ago), has low install friction, no known vulnerabilities, and a permissive MIT license. Install it if you need to integrate GoCardless direct debit payments into a Python application. The single dependency (requests) and broad Python version support make it straightforward to adopt.
Install
gocardless-pro on PyPI
pip
pip install gocardless-prouv
uv add gocardless-propoetry
poetry add gocardless-proInstalling gocardless-pro
Before you install
Low install friction with a single dependency (requests). Active maintenance with a release just 1 day ago and commits through 2026-08-13. Tested against Python 3.9, 3.10, 3.11, and 3.12, with support back to Python 3.6.
License in practice
MIT license is permissive, allowing commercial and private use with minimal restrictions—suitable for most projects.
Quickstart
pip install gocardless_pro
import gocardless_pro
import os
token = os.environ['ACCESS_TOKEN']
client = gocardless_pro.Client(access_token=token, environment='live')
customer = client.customers.create(params={'email': 'jane@example.com'})
payment = client.payments.get("PA123")
Requires a GoCardless account and valid ACCESS_TOKEN environment variable to authenticate with the API.
Verify before relying
- Whether rate limiting is enforced by the API and how the client handles backoff or retry logic.
- Support for async/await patterns or if the client is synchronous-only.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.6) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — requests |
| Maintenance | actively maintained — 1 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 249,160/month — #8,654 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: gocardless_pro-3.6.3-py3-none-any.whl
Keywords: gocardless, directdebit, payments, sepa, bacs
Tags
More WWW/HTTP packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
h11h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
httpxHTTPX is a fully featured HTTP client library…
permissive · top 100 on PyPI
httpcoreA minimal low-level HTTP client library that…
permissive · top 100 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
mollie-api-pythonPython client library for the Mollie payment…
permissive · top 15,000 on PyPI
dodopaymentsProvides a Python client library for the Dodo…
permissive · top 15,000 on PyPI
paypalrestsdkA REST client library for integrating PayPal…
unclear · top 5,000 on PyPI
fintsA pure-Python implementation of the FinTS 3.0…
copyleft · top 15,000 on PyPI
beanstreamProvides a Python client library for the…
permissive · top 15,000 on PyPI
razorpayPython client library for the Razorpay payment…
permissive · top 5,000 on PyPI
stripeProvides Python bindings to the Stripe API,…
permissive · top 1,000 on PyPI
chargebeeOfficial Python client library for integrating…
unclear · top 5,000 on PyPI
onfido-pythonOfficial Python client library for the Onfido…
permissive · top 5,000 on PyPI
AdyenProvides official Python bindings for Adyen's…
permissive · top 5,000 on PyPI