GoCardless
GoCardless is a platform for collecting recurring and one-off payments directly from customers’ bank accounts. It is commonly used in ecommerce for subscription billing, invoice payments, and automated payment collection.
Key features include:
- Direct debit payment processing
- Instant bank payments
- Customer mandate creation
- Payment API access
- Multi-currency support
This scenario creates a GoCardless customer and initiates an instant first payment with a direct debit mandate when an order is finalised in ShopWired.
This scenario allows:
- Triggering from a ShopWired order finalised webhook
- Creating a customer in GoCardless via HTTP request
- Initiating a payment and mandate in GoCardless
- Passing order total as payment amount
- Defining currency for the transaction
Prerequisites
Prerequisites
- An account with Make
- An account with GoCardless
Scenario blueprint
Scenario blueprint
A blueprint is provided for this scenario here:
Modules used in this scenario:
- ShopWired order finalised
- HTTP - Create GoCardless customer
- GoCardless - Create instant first payment and direct debit mandate
This scenario uses:
- A webhook trigger
- HTTP module to create a GoCardless customer
- GoCardless app module to create a payment and mandate
Scenario setup steps
Scenario setup steps
- Select the scenario blueprint provided with this guide
- Open it in Make
- Create a new scenario from the blueprint
- Replace any placeholder values if required
- Connect required accounts
- Turn the scenario on
- Trigger the relevant event in ShopWired
ShopWired webhook data
ShopWired webhook data
Event: order.finalized
{
"event": {
"topic": "order.finalized",
"data": {
"object": {
"reference": "1000123",
"total": "59.99",
"currency": "GBP"
}
}
}
}
Required user inputs
Required user inputs
| Field | Description |
|---|---|
| GoCardless API token | Used in the HTTP module Authorization header |
| Currency | Currency code used for payments (e.g. GBP) if not dynamically mapped |
| Customer details | Email, name, and address fields used in HTTP request body |
| Webhook URL | Generated by Make and added to ShopWired |
Recommendations
Recommendations
- Ensure the currency field is correctly set or mapped from ShopWired data
- The amount must remain multiplied by 100 to match GoCardless minor units
- Replace static customer data in the HTTP module with mapped ShopWired fields
- Keep API tokens secure and do not expose them in shared scenarios
- Test the webhook by placing a real order in ShopWired
- This scenario only runs when an order is finalised
- This scenario does not update or modify orders in ShopWired