---
title: "List mandates"
method: GET
path: "/v3/mandates"
tags: ["Mandates"]
---

# List mandates

`GET /v3/mandates`

## Request

- Base URL: `https://api.truelayer-sandbox.com`
- URL: `https://api.truelayer-sandbox.com/v3/mandates`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `https://auth.truelayer.com/connect/token` scopes: `mandates`

List all the mandates associated to the client used.
This API must be called using a backend bearer token.

## Query parameters

- `user_id` string: Unique ID for the User
- `cursor` string: Cursor used for pagination purposes that represents the first item of the page. Returned as `next_cursor` in the response payload of endpoints supporting pagination. Not required to access the first page of items.
- `limit` integer: Maximum number of items included in the returned window. Should be greater than 0 and less than 50. If not set, a default of 25 is considered.

## Response `200`

Mandates list

- ListMandates
  - `items` union[], required
    - union
      - union
        - object: A mandate yet to be authorized. This is the first status for a mandate that requires further actions to be authorized.
          - `type` 'sweeping', required
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `beneficiary` union, required
            - GetMandateDestinationMerchantAccount: The identifier for a TrueLayer's merchant account.
              - …
            - GetMandateDestinationExternalAccount: The routing information for an external bank account.
              - …
          - `reference` string, required: Reference set on the mandate. This field is deprecated. Please use the `statement_reference` field instead.
          - `statement_reference` string: Reference set on the mandate.
          - `provider_selection` union, required: Provider Selection
            - object: Indicates that the provider is to be selected from a collection
              - …
            - object: Preselected provider. Indicates that the provider for this payment is preselected.
              - …
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `constraints` VRPConstraints, required: Sets the limits for the payments that can be created by the mandate. If a payment is attempted that doesn't fit within these constraints it will fail. These constraints are considered only for VRP mandates (not direct debit).
            - `valid_from` string, datetime: Start date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `valid_to` string, datetime: End date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `maximum_individual_amount` integer, required: A 'cent' value representing the maximum amount that can be specified in a payment instruction
            - `periodic_limits` object, required: The limits for the payments that can be created by the mandate within a specified time period. At least one periodic limit must be provided upon mandate creation.
              - …
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'authorization_required', required
        - object
          - `type` 'sweeping', required
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `beneficiary` union, required
            - GetMandateDestinationMerchantAccount: The identifier for a TrueLayer's merchant account.
              - …
            - GetMandateDestinationExternalAccount: The routing information for an external bank account.
              - …
          - `reference` string, required: Reference set on the mandate. This field is deprecated. Please use the `statement_reference` field instead.
          - `statement_reference` string: Reference set on the mandate.
          - `provider_selection` union, required: Provider Selection
            - object: Indicates that the provider is to be selected from a collection
              - …
            - object: Preselected provider. Indicates that the provider for this payment is preselected.
              - …
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `constraints` VRPConstraints, required: Sets the limits for the payments that can be created by the mandate. If a payment is attempted that doesn't fit within these constraints it will fail. These constraints are considered only for VRP mandates (not direct debit).
            - `valid_from` string, datetime: Start date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `valid_to` string, datetime: End date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `maximum_individual_amount` integer, required: A 'cent' value representing the maximum amount that can be specified in a payment instruction
            - `periodic_limits` object, required: The limits for the payments that can be created by the mandate within a specified time period. At least one periodic limit must be provided upon mandate creation.
              - …
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'authorizing', required
          - `authorization_flow` object, required: Contains information regarding the nature and the state of the authorization flow
            - `actions` object, required
              - …
            - `configuration` MandateAuthorizationFlowConfiguration
              - …
        - object
          - `type` 'sweeping', required
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `beneficiary` union, required
            - GetMandateDestinationMerchantAccount: The identifier for a TrueLayer's merchant account.
              - …
            - GetMandateDestinationExternalAccount: The routing information for an external bank account.
              - …
          - `reference` string, required: Reference set on the mandate. This field is deprecated. Please use the `statement_reference` field instead.
          - `statement_reference` string: Reference set on the mandate.
          - `provider_selection` union, required: Provider Selection
            - object: Indicates that the provider is to be selected from a collection
              - …
            - object: Preselected provider. Indicates that the provider for this payment is preselected.
              - …
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `constraints` VRPConstraints, required: Sets the limits for the payments that can be created by the mandate. If a payment is attempted that doesn't fit within these constraints it will fail. These constraints are considered only for VRP mandates (not direct debit).
            - `valid_from` string, datetime: Start date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `valid_to` string, datetime: End date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `maximum_individual_amount` integer, required: A 'cent' value representing the maximum amount that can be specified in a payment instruction
            - `periodic_limits` object, required: The limits for the payments that can be created by the mandate within a specified time period. At least one periodic limit must be provided upon mandate creation.
              - …
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'authorized', required
          - `authorized_at` string, datetime: The date and time the mandate was authorized at
          - `authorization_flow` MandateAuthorizationFlowFrozen, required: Information about the authorization flow the mandate went through. If the mandate transitioned immediately to `authorized` or `failed`, this field will be null.
            - `configuration` MandateAuthorizationFlowConfiguration, required
              - …
          - `remitter` VRPPaymentRemitter: The routing information for the remitter bank account.
            - `account_holder_name` string, required: The name of the remitter account holder.
            - `account_identifier` union, required: A unique account identifier for an external account.
              - …
        - object
          - `type` 'sweeping', required
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `beneficiary` union, required
            - GetMandateDestinationMerchantAccount: The identifier for a TrueLayer's merchant account.
              - …
            - GetMandateDestinationExternalAccount: The routing information for an external bank account.
              - …
          - `reference` string, required: Reference set on the mandate. This field is deprecated. Please use the `statement_reference` field instead.
          - `statement_reference` string: Reference set on the mandate.
          - `provider_selection` union, required: Provider Selection
            - object: Indicates that the provider is to be selected from a collection
              - …
            - object: Preselected provider. Indicates that the provider for this payment is preselected.
              - …
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `constraints` VRPConstraints, required: Sets the limits for the payments that can be created by the mandate. If a payment is attempted that doesn't fit within these constraints it will fail. These constraints are considered only for VRP mandates (not direct debit).
            - `valid_from` string, datetime: Start date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `valid_to` string, datetime: End date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `maximum_individual_amount` integer, required: A 'cent' value representing the maximum amount that can be specified in a payment instruction
            - `periodic_limits` object, required: The limits for the payments that can be created by the mandate within a specified time period. At least one periodic limit must be provided upon mandate creation.
              - …
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'failed', required
          - `failed_at` string, datetime: The date and time the mandate authorization was failed at
          - `failure_stage` 'authorization_required' | 'authorized' | 'authorizing' | 'revoked', required: The status the mandate was in when it failed.
          - `failure_reason` string, required: A readable detail for why the mandate failed. Example values to expect: - `authorization_failed` - `provider_error` - `provider_rejected` - `internal_server_error` - `invalid_sort_code` - `invalid_request` - `expired` - `unknown_error`
          - `authorization_flow` MandateAuthorizationFlowFrozen: Information about the authorization flow the mandate went through. If the mandate transitioned immediately to `authorized` or `failed`, this field will be null.
            - `configuration` MandateAuthorizationFlowConfiguration, required
              - …
        - object
          - `type` 'sweeping', required
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `beneficiary` union, required
            - GetMandateDestinationMerchantAccount: The identifier for a TrueLayer's merchant account.
              - …
            - GetMandateDestinationExternalAccount: The routing information for an external bank account.
              - …
          - `reference` string, required: Reference set on the mandate. This field is deprecated. Please use the `statement_reference` field instead.
          - `statement_reference` string: Reference set on the mandate.
          - `provider_selection` union, required: Provider Selection
            - object: Indicates that the provider is to be selected from a collection
              - …
            - object: Preselected provider. Indicates that the provider for this payment is preselected.
              - …
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `constraints` VRPConstraints, required: Sets the limits for the payments that can be created by the mandate. If a payment is attempted that doesn't fit within these constraints it will fail. These constraints are considered only for VRP mandates (not direct debit).
            - `valid_from` string, datetime: Start date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `valid_to` string, datetime: End date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `maximum_individual_amount` integer, required: A 'cent' value representing the maximum amount that can be specified in a payment instruction
            - `periodic_limits` object, required: The limits for the payments that can be created by the mandate within a specified time period. At least one periodic limit must be provided upon mandate creation.
              - …
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'revoked', required
          - `revocation_source` 'client' | 'provider', required: Source for the revocation
          - `authorization_flow` MandateAuthorizationFlowFrozen, required: Information about the authorization flow the mandate went through. If the mandate transitioned immediately to `authorized` or `failed`, this field will be null.
            - `configuration` MandateAuthorizationFlowConfiguration, required
              - …
          - `authorized_at` string, datetime: The date and time the mandate was authorized at
          - `revoked_at` string, datetime: The date and time the mandate was revoked at
      - union
        - object: A mandate yet to be authorized. This is the first status for a mandate that requires further actions to be authorized.
          - `type` 'commercial', required
          - `use_case` 'charity' | 'financial_services' | 'government' | 'utilities': The use case for which the cVRP mandate is used for.
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `beneficiary` union, required
            - GetMandateDestinationMerchantAccount: The identifier for a TrueLayer's merchant account.
              - …
            - GetMandateDestinationExternalAccount: The routing information for an external bank account.
              - …
          - `reference` string, required: Reference set on the mandate. This field is deprecated. Please use the `statement_reference` field instead.
          - `statement_reference` string: Reference set on the mandate.
          - `provider_selection` union, required: Provider Selection
            - object: Indicates that the provider is to be selected from a collection
              - …
            - object: Preselected provider. Indicates that the provider for this payment is preselected.
              - …
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `constraints` VRPConstraints, required: Sets the limits for the payments that can be created by the mandate. If a payment is attempted that doesn't fit within these constraints it will fail. These constraints are considered only for VRP mandates (not direct debit).
            - `valid_from` string, datetime: Start date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `valid_to` string, datetime: End date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `maximum_individual_amount` integer, required: A 'cent' value representing the maximum amount that can be specified in a payment instruction
            - `periodic_limits` object, required: The limits for the payments that can be created by the mandate within a specified time period. At least one periodic limit must be provided upon mandate creation.
              - …
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'authorization_required', required
        - object
          - `type` 'commercial', required
          - `use_case` 'charity' | 'financial_services' | 'government' | 'utilities': The use case for which the cVRP mandate is used for.
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `beneficiary` union, required
            - GetMandateDestinationMerchantAccount: The identifier for a TrueLayer's merchant account.
              - …
            - GetMandateDestinationExternalAccount: The routing information for an external bank account.
              - …
          - `reference` string, required: Reference set on the mandate. This field is deprecated. Please use the `statement_reference` field instead.
          - `statement_reference` string: Reference set on the mandate.
          - `provider_selection` union, required: Provider Selection
            - object: Indicates that the provider is to be selected from a collection
              - …
            - object: Preselected provider. Indicates that the provider for this payment is preselected.
              - …
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `constraints` VRPConstraints, required: Sets the limits for the payments that can be created by the mandate. If a payment is attempted that doesn't fit within these constraints it will fail. These constraints are considered only for VRP mandates (not direct debit).
            - `valid_from` string, datetime: Start date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `valid_to` string, datetime: End date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `maximum_individual_amount` integer, required: A 'cent' value representing the maximum amount that can be specified in a payment instruction
            - `periodic_limits` object, required: The limits for the payments that can be created by the mandate within a specified time period. At least one periodic limit must be provided upon mandate creation.
              - …
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'authorizing', required
          - `authorization_flow` object, required: Contains information regarding the nature and the state of the authorization flow
            - `actions` object, required
              - …
            - `configuration` MandateAuthorizationFlowConfiguration
              - …
        - object
          - `type` 'commercial', required
          - `use_case` 'charity' | 'financial_services' | 'government' | 'utilities': The use case for which the cVRP mandate is used for.
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `beneficiary` union, required
            - GetMandateDestinationMerchantAccount: The identifier for a TrueLayer's merchant account.
              - …
            - GetMandateDestinationExternalAccount: The routing information for an external bank account.
              - …
          - `reference` string, required: Reference set on the mandate. This field is deprecated. Please use the `statement_reference` field instead.
          - `statement_reference` string: Reference set on the mandate.
          - `provider_selection` union, required: Provider Selection
            - object: Indicates that the provider is to be selected from a collection
              - …
            - object: Preselected provider. Indicates that the provider for this payment is preselected.
              - …
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `constraints` VRPConstraints, required: Sets the limits for the payments that can be created by the mandate. If a payment is attempted that doesn't fit within these constraints it will fail. These constraints are considered only for VRP mandates (not direct debit).
            - `valid_from` string, datetime: Start date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `valid_to` string, datetime: End date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `maximum_individual_amount` integer, required: A 'cent' value representing the maximum amount that can be specified in a payment instruction
            - `periodic_limits` object, required: The limits for the payments that can be created by the mandate within a specified time period. At least one periodic limit must be provided upon mandate creation.
              - …
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'authorized', required
          - `authorized_at` string, datetime: The date and time the mandate was authorized at
          - `authorization_flow` MandateAuthorizationFlowFrozen, required: Information about the authorization flow the mandate went through. If the mandate transitioned immediately to `authorized` or `failed`, this field will be null.
            - `configuration` MandateAuthorizationFlowConfiguration, required
              - …
          - `remitter` VRPPaymentRemitter: The routing information for the remitter bank account.
            - `account_holder_name` string, required: The name of the remitter account holder.
            - `account_identifier` union, required: A unique account identifier for an external account.
              - …
        - object
          - `type` 'commercial', required
          - `use_case` 'charity' | 'financial_services' | 'government' | 'utilities': The use case for which the cVRP mandate is used for.
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `beneficiary` union, required
            - GetMandateDestinationMerchantAccount: The identifier for a TrueLayer's merchant account.
              - …
            - GetMandateDestinationExternalAccount: The routing information for an external bank account.
              - …
          - `reference` string, required: Reference set on the mandate. This field is deprecated. Please use the `statement_reference` field instead.
          - `statement_reference` string: Reference set on the mandate.
          - `provider_selection` union, required: Provider Selection
            - object: Indicates that the provider is to be selected from a collection
              - …
            - object: Preselected provider. Indicates that the provider for this payment is preselected.
              - …
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `constraints` VRPConstraints, required: Sets the limits for the payments that can be created by the mandate. If a payment is attempted that doesn't fit within these constraints it will fail. These constraints are considered only for VRP mandates (not direct debit).
            - `valid_from` string, datetime: Start date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `valid_to` string, datetime: End date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `maximum_individual_amount` integer, required: A 'cent' value representing the maximum amount that can be specified in a payment instruction
            - `periodic_limits` object, required: The limits for the payments that can be created by the mandate within a specified time period. At least one periodic limit must be provided upon mandate creation.
              - …
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'failed', required
          - `failed_at` string, datetime: The date and time the mandate authorization was failed at
          - `failure_stage` 'authorization_required' | 'authorized' | 'authorizing' | 'revoked', required: The status the mandate was in when it failed.
          - `failure_reason` string, required: A readable detail for why the mandate failed. Example values to expect: - `authorization_failed` - `provider_error` - `provider_rejected` - `internal_server_error` - `invalid_sort_code` - `invalid_request` - `expired` - `unknown_error`
          - `authorization_flow` MandateAuthorizationFlowFrozen: Information about the authorization flow the mandate went through. If the mandate transitioned immediately to `authorized` or `failed`, this field will be null.
            - `configuration` MandateAuthorizationFlowConfiguration, required
              - …
        - object
          - `type` 'commercial', required
          - `use_case` 'charity' | 'financial_services' | 'government' | 'utilities': The use case for which the cVRP mandate is used for.
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `beneficiary` union, required
            - GetMandateDestinationMerchantAccount: The identifier for a TrueLayer's merchant account.
              - …
            - GetMandateDestinationExternalAccount: The routing information for an external bank account.
              - …
          - `reference` string, required: Reference set on the mandate. This field is deprecated. Please use the `statement_reference` field instead.
          - `statement_reference` string: Reference set on the mandate.
          - `provider_selection` union, required: Provider Selection
            - object: Indicates that the provider is to be selected from a collection
              - …
            - object: Preselected provider. Indicates that the provider for this payment is preselected.
              - …
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `constraints` VRPConstraints, required: Sets the limits for the payments that can be created by the mandate. If a payment is attempted that doesn't fit within these constraints it will fail. These constraints are considered only for VRP mandates (not direct debit).
            - `valid_from` string, datetime: Start date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `valid_to` string, datetime: End date time for which the consent remains valid using format `YYYY-MM-DDTHH:mm:ss.sssZ`
            - `maximum_individual_amount` integer, required: A 'cent' value representing the maximum amount that can be specified in a payment instruction
            - `periodic_limits` object, required: The limits for the payments that can be created by the mandate within a specified time period. At least one periodic limit must be provided upon mandate creation.
              - …
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'revoked', required
          - `revocation_source` 'client' | 'provider', required: Source for the revocation
          - `authorization_flow` MandateAuthorizationFlowFrozen, required: Information about the authorization flow the mandate went through. If the mandate transitioned immediately to `authorized` or `failed`, this field will be null.
            - `configuration` MandateAuthorizationFlowConfiguration, required
              - …
          - `authorized_at` string, datetime: The date and time the mandate was authorized at
          - `revoked_at` string, datetime: The date and time the mandate was revoked at
      - union
        - object: A mandate yet to be authorized. This is the first status for a mandate that requires further actions to be authorized.
          - `type` 'direct_debit', required
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `remitter` GetDDRemitter, required: Remitter
            - `type` 'preselected', required
            - `account_holder_name` string, required: The name of the external account holder. pattern: `^[^\(\)]{1,80}$`
            - `account_identifier` union, required: A unique account identifier for an external account.
              - …
          - `beneficiary` DDBeneficiary, required: The identifier for a TrueLayer's merchant account.
            - `type` 'merchant_account', required: The type of destination.
            - `merchant_account_id` string, uuid, required: Unique ID for the Merchant Account
            - `account_holder_name` string: The name of the beneficiary, which displays in the remitter's bank statement. If unspecified, the API uses the account owner name associated with the selected merchant account.
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'authorization_required', required
        - object
          - `type` 'direct_debit', required
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `remitter` GetDDRemitter, required: Remitter
            - `type` 'preselected', required
            - `account_holder_name` string, required: The name of the external account holder. pattern: `^[^\(\)]{1,80}$`
            - `account_identifier` union, required: A unique account identifier for an external account.
              - …
          - `beneficiary` DDBeneficiary, required: The identifier for a TrueLayer's merchant account.
            - `type` 'merchant_account', required: The type of destination.
            - `merchant_account_id` string, uuid, required: Unique ID for the Merchant Account
            - `account_holder_name` string: The name of the beneficiary, which displays in the remitter's bank statement. If unspecified, the API uses the account owner name associated with the selected merchant account.
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'authorizing', required
          - `authorization_flow` object: Contains information regarding the nature and the state of the authorization flow
            - `actions` object, required
              - …
            - `configuration` MandateAuthorizationFlowConfiguration
              - …
        - object
          - `type` 'direct_debit', required
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `remitter` GetDDRemitter, required: Remitter
            - `type` 'preselected', required
            - `account_holder_name` string, required: The name of the external account holder. pattern: `^[^\(\)]{1,80}$`
            - `account_identifier` union, required: A unique account identifier for an external account.
              - …
          - `beneficiary` DDBeneficiary, required: The identifier for a TrueLayer's merchant account.
            - `type` 'merchant_account', required: The type of destination.
            - `merchant_account_id` string, uuid, required: Unique ID for the Merchant Account
            - `account_holder_name` string: The name of the beneficiary, which displays in the remitter's bank statement. If unspecified, the API uses the account owner name associated with the selected merchant account.
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'authorized', required
          - `statement_reference` string, required: Reference set on the mandate.
          - `authorized_at` string, datetime, required: The date and time the mandate was authorized at.
        - object
          - `type` 'direct_debit', required
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `remitter` GetDDRemitter, required: Remitter
            - `type` 'preselected', required
            - `account_holder_name` string, required: The name of the external account holder. pattern: `^[^\(\)]{1,80}$`
            - `account_identifier` union, required: A unique account identifier for an external account.
              - …
          - `beneficiary` DDBeneficiary, required: The identifier for a TrueLayer's merchant account.
            - `type` 'merchant_account', required: The type of destination.
            - `merchant_account_id` string, uuid, required: Unique ID for the Merchant Account
            - `account_holder_name` string: The name of the beneficiary, which displays in the remitter's bank statement. If unspecified, the API uses the account owner name associated with the selected merchant account.
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'failed', required
          - `failed_at` string, datetime, required: The date and time the mandate authorization failed at.
          - `failure_stage` 'authorization_required' | 'authorized' | 'authorizing' | 'revoked', required: The status the mandate was in when it failed.
          - `failure_reason` string, required: A readable detail for why the mandate failed. Example values to expect: - `authorization_failed` - `provider_error` - `provider_rejected` - `internal_server_error` - `invalid_sort_code` - `invalid_request` - `expired` - `unknown_error`
        - object
          - `type` 'direct_debit', required
          - `id` string, required: Unique ID for the mandate
          - `currency` 'GBP' | 'EUR', required
          - `remitter` GetDDRemitter, required: Remitter
            - `type` 'preselected', required
            - `account_holder_name` string, required: The name of the external account holder. pattern: `^[^\(\)]{1,80}$`
            - `account_identifier` union, required: A unique account identifier for an external account.
              - …
          - `beneficiary` DDBeneficiary, required: The identifier for a TrueLayer's merchant account.
            - `type` 'merchant_account', required: The type of destination.
            - `merchant_account_id` string, uuid, required: Unique ID for the Merchant Account
            - `account_holder_name` string: The name of the beneficiary, which displays in the remitter's bank statement. If unspecified, the API uses the account owner name associated with the selected merchant account.
          - `user` PaymentUser
            - `id` string, required: Unique ID for the User
          - `created_at` string, datetime, required: The date and time the mandate was created at.
          - `metadata` Metadata: Optional field for adding custom key-value data to a resource. This object can contain a maximum of 10 key-value pairs, each with a key with a maximum length of 40 characters and a non-null value with a maximum length of 500 characters.
          - `sub_merchants` PaymentSubMerchants: The details related to any applicable sub-merchants, for example an underlying division of the overall business.
            - `ultimate_counterparty` union, required
              - …
          - `status` 'revoked', required
          - `statement_reference` string, required: Reference set on the mandate.
          - `revocation_source` 'client' | 'provider', required: Source for the revocation
          - `authorized_at` string, datetime, required: The date and time the mandate was authorized at.
          - `revoked_at` string, datetime, required: The date and time the mandate was revoked at.
          - `revocation_reason` string: The reason that the mandate was revoked.
  - `pagination` Pagination, required: Pagination object. Optional next cursor to use as query parameters to fetch the page next to the one fetched.
    - `next_cursor` string: Cursor to be used as `cursor` query parameter to fetch the _next page_ in pagination-ready endpoints.

## Other responses

- `400`: Invalid Parameters
- `401`: Unauthenticated
- `403`: Forbidden
- `500`: Unknown Error

---

[API](https://skmtc.dev/truelayer/apis/payments-api-v3.md) - [All operations](https://skmtc.dev/truelayer/apis/payments-api-v3/llms.txt) - [OpenAPI document](https://skmtc.dev/truelayer/apis/payments-api-v3/revisions/a7c585fc9b84?raw)
