Bank on file basics

An introduction to recurring payments (Bank on file)

You can collect recurring payments from your users in the UK in two ways: Variable Recurring Payments (VRP) and Direct Debits. We call this experience Bank on file.

VRPs are modern, mandate-based payments that give you flexibility and speed. The first step is creating a mandate. VRP mandates include a set of constraints that determine:

  • The period over which payments can be made
  • The maximum amount of an individual payment
  • The maximum amount that can be paid over a specified period

Direct Debit mandates have no constraints such as payment limits or validity periods, meaning payments of any value can be taken until the mandate is revoked by the user.

After your user authorises a mandate, you can accept payments for a variety of purposes such as fixed or variable subscriptions (or payments that you initiate on behalf of your user). These payments execute immediately without individual authorization, as long as they fall within the mandate's constraints.

Types of mandate

TypeFrom → ToExample Use Cases
SweepingUser → User (same person)Moving money between own accounts, paying off own credit card, automated savings
CommercialUser → BusinessSubscriptions, utility bills, recurring purchases, donations

Sweeping

Sweeping payments are payments between a customer's accounts, as defined by the CMA. For example, moving money between current accounts, paying off credit card debt, or moving money to savings.

Key characteristics:

  • Payments are between accounts owned by the same user
  • Enabled by a legal provision called "sweeping"
  • Widely available across UK banks

Wave 1 bank on file

These are payments that don't fall within the scope of sweeping as defined by the CMA. This includes applications such as ecommerce payments, subscriptions to a variable service, or investments.

Key characteristics:

  • Payments are between a consumer and a business (B2C)
  • Covers use cases like subscriptions, utility bills, and regular
  • Requires specific approval and regulatory agreements

Example use case: You could use commercial VRPs like card on file payments and set up a one-click checkout experience, where your user provides a mandate and can then make instant one-click payments without re-authentication.

Direct Debits

Direct Debits are also available for BACS recurring payments. Used alongside [creditable notifications] with open banking API calls populating Direct Debit consents, these can provide you with an instant experience similar to VRPs.

Direct debits are not a type of VRP, but are also based on mandates created with the /v3/mandates endpoint. Direct debits are an agreement between a customer and a business for regular payments. Once the terms are agreed upon, the business sends a direct debit instruction to the customer's bank, which authorizes payments to be made regularly.

Key characteristics:

  • No constraints on payment amounts or validity periods (payments can continue until mandate is revoked)
  • Processed through the BACS scheme (takes 2-3 working days for authorization)
  • Requires remitter details (customer's bank account information) upfront
  • Currently GBP only

Example use cases:

  • Regular payments with varying amounts (eg utility bills)
  • Large purchases split over scheduled payments
  • Subscriptions or donations on a fixed schedule

Recurring payments user journey

To set up recurring payments, your user must first authorise a payment mandate. This mandate represents the authorisation that a user has given you to take payments from their payment account.

At a high level, the steps required to progress a user to making a payment are as follows:

  1. Define the mandate and consent parameters so it's ready to authorise. Do this through a request to the /v3/mandates endpoint.
  2. Authenticate the mandate using an access token with the payments scope.
  3. Send your user through a UI to authorise the mandate. You can use a TrueLayer UI such as the HPP, or build your own.
  4. Create a payment that uses the authorised mandate's id in the payment_method.
  5. Receive status updates on the payment attempt, and receive funds. This is automatic with a TrueLayer merchant account, or you can use references for external accounts.

Next steps

You need to create a mandate before you can make any VRPs. Learn how to create a mandate and what to include in it.