---
updatedAt: 2026-03-11T13:55:02.000Z
agentTools:
  projectIndex: https://docs.truelayer.com/llms.txt
---

# Authorise a payment mandate

Configure the authorisation flow so your users can authorise payment mandates.

After you [create a mandate](/docs/create-a-payment-mandate), you receive a response that contains a `resource_token`, a user `id` and a mandate `id`.

```json Create mandate response
{
  "id": "{The mandate ID}",
  "user": {
    "id": "{The user ID}"
  },
  "resource_token": "The resource token for the mandate"
}
```

You need both values to start the authorisation journey for your user.

Like with a payment, your user must authorise any mandates you create before any money can be sent. They do this by authorising the mandate with their their banking provider. To do this, use a browser redirect to send the user to their bank.

There are two options for authorisation: a prebuilt TrueLayer UI, or a direct API integration.

## Authorise a mandate with a TrueLayer UI

The first option is to use a TrueLayer [web](/docs/web-payment-authorisation-uis)  or [mobile](/docs/mobile-payment-authorisation-uis)  UI for authorisation. These are simpler to integrate than building your own authorisation UI and customisable to match your brand.

TrueLayer authorisation UIs use the `resource_token` you get when you generate a mandate and display screens for your user to authorise the mandate. They also include extra information so your user can understand what a mandate is, and are compliant with any applicable regulation.

[block:image]
{
  "images": [
    {
      "image": [
        "https://files.readme.io/d14a9d05b6d93bd97b9fc88d0c329ff0681fb9e2bc4594f8445307b03dc78588-Frame_1000004697.png",
        "",
        "The mandate creation user journey."
      ],
      "align": "center",
      "caption": "The mandate creation user journey."
    }
  ]
}
[/block]

<br />

### Hosted Payment Page

You can enable your users to authorise a mandate by creating a TrueLayer [Hosted Payment Page (HPP)](https://docs.truelayer.com/docs/hosted-payment-page).

Make sure that you include the `mandate_id` (instead of the `payment_id`) inside the hosted page URL.

See below for an example.

```Text VRP Mandate HPP URL
https://payment.truelayer.com/mandates#mandate_id={payment_id}&resource_token={resource_token}&return_uri={return_uri}
```