Billing Requests and Billing Request Flows is in early access, and subject to
Contact firstname.lastname@example.org to register your interest.
Billing Requests help create resources that require input or action from a customer. An example of required input might be additional customer billing details, while an action would be asking a customer to authorise a payment using their mobile banking app.
There are three primary use cases for Billing Requests:
- Setting up a DD mandate
- Taking an Instant Bank Payment
- Combining (1) and (2) to take the first payment and also setup a DD mandate for subsequent payments
Integrators should create a Billing Request that specifies their desired outcome, picking one of the above use cases, then use the Billing Request Flow to create a checkout flow that takes their customers through the necessary setup.
The Billing Request Flow loads the Billing Request and attempts to complete all required Billing Request actions. Integrators who want to build custom flows may do so by completing actions of their choice, and using a Billing Request Flow to complete whatever they leave incomplete.
To help people make the most of Billing Requests, we have a number of guides that can help you get started.
This guide explains how to ‘complete’ each of the actions that may be required as part of a Billing Request.
Only integrators who build their own payment pages should follow this guide. Billing Request Flows provide a GoCardless hosted checkout flow that can fulfil Billing Requests, without integrators having to build their own flows.
This guide explores the hosted checkout flow available via Billing Request Flows. We breakdown the flow into the separate steps and explain how integrators can best use flows to complete their Billing Requests.
This guide explains how to pre-fill customer details before entering a Billing Request Flow, and how to lock the details if you don’t want the customer to change them.
This guide explains the events associated with a Billing Request’s lifecycle, and how you can use webhooks to respond to changes.