GC Logo
Developer Docs

Guides

Collect Payments
Overview
Setting up MandatesDirect Debit Mandates Verified Mandates Collecting mandates offline Importing Mandates
One-off PaymentsOne-off Direct Debit Instant Bank Payment
Recurring PaymentsSubscription Instalments Variable Recurring Payments Instant Bank Payment + Direct Debit
Integration TypesGoCardless Hosted Pages Javascript Drop-in Flow Custom Payment Pages
Events & WebhooksMandate Events Billing Requests Events
Managing paymentsFX Payments Reconciling Payouts
Scheme guidanceACH and PAD Consent Types Billing Request Purpose Codes VRP Commercial Payment Purpose Codes PayTo Agreements and Payments

Instant Bank Payment

View as Markdown

What is Instant Bank Pay?

Instant Bank Payments allow you to collect a one-off payment directly from your customer's bank account with confirmation within minutes. Unlike Direct Debit, there's no mandate; the customer must authorise each payment individually via their banking app.

Integration options: This guide shows the API flow. You can also use Hosted Payment Pages for a no-code approach. Drop-in Flow does not support Instant Bank Pay.


Availability: GBP (Faster Payments), EUR (SEPA Instant)

When to use Instant Bank Pay

  • E-commerce checkouts where speed matters

  • One-time purchases with no future billing relationship

  • Time-sensitive payments (event tickets, limited availability)

  • High-value one-off transactions where immediate confirmation is needed

  • Replacing card payments to reduce fees and eliminate chargebacks

Instant Bank Pay vs One-off Direct Debit

Instant Bank Pay

One-off via Direct Debit

Mandate required

No

Yes

Customer authorisation

Per payment

Once (mandate setup)

Confirmation speed

Minutes

2-5 business days

Re-use for future payments

No, new authorisation each time

Yes, collect again without re-authorisation

Protection

None

Scheme-specific

Customer experience

The bank app redirects each time

One-time setup, then hands-off

When to choose Direct Debit instead: If you expect to charge the customer more than once, a Direct Debit mandate is usually better. The customer authorises once, and you can collect future payments without requiring them to open their banking app again. Instant Bank Pay requires a new authorisation for every payment.

When to combine both: If you need immediate confirmation for the first payment but also want a mandate for future charges, use the combined Instant Payment + DD Setup flow instead.

How it works

  1. You create a Billing Request with a payment_request — no mandate_request

  2. The customer authorises the payment via your chosen integration

  3. The customer is redirected to their banking app to approve

  4. Payment is confirmed within seconds

  5. You receive a billing_requests.fulfilled webhook — payment is processing

  6. You receive a payments.confirmed webhook — payment is settled

  7. Funds arrive in your account (typically next business day)

Step-by-step guide