Example direct API integration flows
Examples showing how to implement your own provider selection and authentication flow if you are integrating with our API directly.
UK redirect flow
Using the authorization_flow parameter at payment creation
authorization_flow parameter at payment creationThis is an example of a payment with the redirect flow in the UK, which uses the authorization_flow parameter at payment creation to start the flow.
The requests and responses include:
- The POST request sent to the
/v3/paymentsendpoint to create the payment.
This request includes theauthorization_flowparameter. The information provided in this parameter is the same as that provided to the/v3/payments/{id}/authorization-flowendpoint, as shown below. - The response returned from the
/v3/paymentsendpoint. This contains the paymentidandresource_token.
The response also contains theauthorization_flowobject, which states that the next action isprovider_selectionand provides a list of providers (as this is a sandbox payment, it only contains two). In a production payment, the list of providers depends on the filters of the payment creation request. - The POST request sent to the
.../authorization-flow/actions/provider-selectionendpoint to submit the provider the user selected. - The response returned from the
.../authorization-flow/actions/provider-selectionendpoint, which contains theredirectaction. This will redirect the user to their bank's login page, where they can input the credentials.
{
"amount_in_minor": 1,
"currency": "GBP",
"authorization_flow": {
"provider_selection": {},
"redirect": {
"return_uri": "https://console.truelayer.com/redirect-page"
}
},
"payment_method": {
"type": "bank_transfer",
"provider_selection": {
"type": "user_selected",
"filter": {
"release_channel": "general_availability"
}
},
"beneficiary": {
"type": "merchant_account",
"account_holder_name": "Merchant Account name",
"merchant_account_id": "200552da-13da-43c5-a9ba-04ee1502ac57"
}
},
"user":
{
"id": "f61c0ec7-0f83-414e-8e5f-aace86e0ed35",
"name": "Jonathan Sandbridge",
"email": "[email protected]",
"phone": "+44123456789",
"date_of_birth": "1992-11-28",
"address":
{
"address_line1": "1, Hardwick Street",
"city": "London",
"state": "London",
"zip": "EC1R 4RB",
"country_code": "GB"
}
}
}
{
"id": "1603cbc8-8ebc-4f3d-8fad-43f010535bce",
"user": {
"id": "f61c0ec7-0f83-414e-8e5f-aace86e0ed35"
},
"resource_token": "eyJhbGciOiJSUzUxMiIsImtpZCI6IkRCejExcEFuUGNXVndqaFBNWERuckNyQ0ZrT1p0Y2FqYWtjU21GNmJiVk0iLCJ0eXAiOiJKV1QifQ.eyJzY29wZSI6InBheW1lbnQiLCJjbGllbnRfaWQiOiJzYW5kYm94LXRvbXRlc3QtYTRkNDMyIiwianRpIjoiMTYwM2NiYzgtOGViYy00ZjNkLThmYWQtNDNmMDEwNTM1YmNlIiwibmJmIjoxNzE4MTEyMTg0LCJleHAiOjE3MTgxMTMwODQsImlzcyI6Imh0dHBzOi8vYXBpLnRydWVsYXllci1zYW5kYm94LmNvbS9wYXltZW50cy1nYXRld2F5IiwiYXVkIjoiaHR0cHM6Ly9hcGkudHJ1ZWxheWVyLXNhbmRib3guY29tIn0.ZY8gNaXgUAaSf-4nyn3-VorZ8RQd6pBsbaaHvt9qjsEbWNBHJDoilfyvtVsc3Y0MtNf3rzJC-nQwCfSHjHAZ7aoY3Pvcj11BJVwUU1p7NGrc81PLDu1nwNazu15tHrlUdO0Od4KKRMICc_gb8z3uN0Qejnm3v68obeYx0z0MUH9NUiRJTLKOejhPscpVRrdiLbQieDaf-ElLr6pF4mQUEKfulIH7ZgqGA3SCPVmEJZfM_FYqr43HtibeoyBLsyshD7A5_ff-So9iBLUY38d9HoTAGtsMSXXd2LVNoLbtUC1HRfelD8eJ1bQfIwqVM0bx9XZgh4r9lw6tn8rP59SSjw",
"status": "authorizing",
"authorization_flow": {
"actions": {
"next": {
"type": "provider_selection",
"providers": [
{
"id": "mock-payments-gb-redirect",
"display_name": "Mock UK Payments - Redirect Flow",
"icon_uri": "https://providers-assets.truelayer.com/mock-payments-gb-redirect/icon.svg",
"logo_uri": "https://providers-assets.truelayer.com/mock-payments-gb-redirect/logo.svg",
"bg_color": "#44689a",
"country_code": "GB",
"availability": {
"recommended_status": "healthy",
"updated_at": "2024-06-11T13:23:03.6114426Z"
},
"schemes": [
{
"id": "faster_payments_service"
}
]
},
{
"id": "mock-payments-gb-redirect-unhealthy",
"display_name": "Mock UK Payments - Redirect Flow (Unhealthy)",
"icon_uri": "https://providers-assets.truelayer.com/mock-payments-gb-redirect-unhealthy/icon.svg",
"logo_uri": "https://providers-assets.truelayer.com/mock-payments-gb-redirect-unhealthy/logo.svg",
"bg_color": "#44689a",
"country_code": "GB",
"availability": {
"recommended_status": "unhealthy",
"updated_at": "2024-06-11T13:23:03.6114426Z"
},
"schemes": [
{
"id": "faster_payments_service"
}
]
}
]
}
}
}
}
{
"provider_id": "mock-payments-gb-redirect"
}
{
"status": "authorizing",
"authorization_flow": {
"actions": {
"next": {
"type": "redirect",
"uri": "https://pay-mock-connect.truelayer-sandbox.com/login/c5c6a1c8-4fb1-48e2-95ce-7cef5a5ebf21#token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJjNWM2YTFjOC00ZmIxLTQ4ZTItOTVjZS03Y2VmNWE1ZWJmMjEiLCJzY29wZSI6InBheS1tb2NrLWNvbm5lY3QtYXBpIiwibmJmIjoxNzE4MTEyNjQwLCJleHAiOjE3MTgxMTYyNDAsImlzcyI6Imh0dHBzOi8vcGF5LW1vY2stY29ubmVjdC50cnVlbGF5ZXItc2FuZGJveC5jb20iLCJhdWQiOiJodHRwczovL3BheS1tb2NrLWNvbm5lY3QudHJ1ZWxheWVyLXNhbmRib3guY29tIn0.AVM2v56tfpMVd_yAtQGUHrODyd6QfcxAuyZSFBOedoM"
}
}
}
}
Using the .../{id}/authorization-flow endpoint
.../{id}/authorization-flow endpointThis is an example of a payment with the redirect flow in the UK, which uses the dedicated .../{id}/authorization-flow endpoint to start the flow.
The requests and responses include:
- The POST request sent to the
/v3/paymentsendpoint to create the payment. - The response returned from the
/v3/paymentsendpoint, which contains the paymentidandresource_token. - The POST request sent to the
/v3/payments/{id}/authorization-flowendpoint to start the authorisation flow. - The response returned from the
/v3/payments/{id}/authorization-flowendpoint, which contains a list of possible providers. This example only contains a single provider, but it can contain more depending on the filters in the initial payment creation request. - The POST request sent to the
.../authorization-flow/actions/provider-selectionendpoint to submit the provider the user selected. - The response returned from the
.../authorization-flow/actions/provider-selectionendpoint, which contains theredirectaction. This will redirect the user to their bank's login page, where they can input the credentials.
{
"amount_in_minor": 1,
"currency": "GBP",
"payment_method": {
"type": "bank_transfer",
"provider_selection": {
"type": "user_selected",
"filter": {
"release_channel": "general_availability"
}
},
"beneficiary": {
"type": "merchant_account",
"account_holder_name": "Merchant Account name",
"merchant_account_id": "200552da-13da-43c5-a9ba-04ee1502ac57"
}
},
"user":
{
"id": "f61c0ec7-0f83-414e-8e5f-aace86e0ed35",
"name": "Jonathan Sandbridge",
"email": "[email protected]",
"phone": "+44123456789",
"date_of_birth": "1992-11-28",
"address":
{
"address_line1": "1, Hardwick Street",
"city": "London",
"state": "London",
"zip": "EC1R 4RB",
"country_code": "GB"
}
}
}
{
"id": "87a56e00-50db-48e3-99e0-dbbe008a53cb",
"user": {
"id": "f61c0ec7-0f83-414e-8e5f-aace86e0ed35"
},
"resource_token": "eyJhbGciOiJSUzUxMiIsImtpZCI6IkRCejExcEFuUGNXVndqaFBNWERuckNyQ0ZrT1p0Y2FqYWtjU21GNmJiVk0iLCJ0eXAiOiJKV1QifQ.eyJzY29wZSI6InBheW1lbnQiLCJjbGllbnRfaWQiOiJzYW5kYm94LXRvbXRlc3QtYTRkNDMyIiwianRpIjoiODdhNTZlMDAtNTBkYi00OGUzLTk5ZTAtZGJiZTAwOGE1M2NiIiwibmJmIjoxNzE4MTEwOTEyLCJleHAiOjE3MTgxMTE4MTIsImlzcyI6Imh0dHBzOi8vYXBpLnRydWVsYXllci1zYW5kYm94LmNvbS9wYXltZW50cy1nYXRld2F5IiwiYXVkIjoiaHR0cHM6Ly9hcGkudHJ1ZWxheWVyLXNhbmRib3guY29tIn0.HqszutVFkTX0GG-NLHBS_pmeqZ97qgQ3vtJk294bZZLKtAG4QQe8uefHzIMApsMGyuFIUTJjo-UERREMWHBkxaK2JZGuDPOXKfgEzPKgjDwUHi4XOop2bPeNGDyYL2lYYeoiQ3sfwze--QH-wLua_I78oL6Mo7NTTU7zsHJSMMPAdu9UmPrdIzasRNlqZDSWY-tSTul2sAVsS9JFAfIDt-aVKrAiteX18g9Rh7d5lXaz78KoooquJWQ238mCfKsCmkXmGZvLItvsVij2XX9dr8LMjjsPOILUEfQzwma_NiiwSeOMYw3ZeIfRlqR75DKLRn5u07bYZEEsr8KczmL9mA",
"status": "authorization_required"
}
{
"provider_selection": {},
"redirect": {
"return_uri": "https://console.truelayer.com/redirect-page"
}
}
{
"status": "authorizing",
"authorization_flow": {
"actions": {
"next": {
"type": "provider_selection",
"providers": [
{
"id": "mock-payments-gb-redirect",
"display_name": "Mock UK Payments - Redirect Flow",
"icon_uri": "https://truelayer-provider-assets.s3.amazonaws.com/uk/icons/mock-payments-gb-redirect.svg",
"logo_uri": "https://truelayer-provider-assets.s3.amazonaws.com/uk/logos/mock-payments-gb-redirect.svg",
"bg_color": "#FFFFFF",
"country_code": "GB"
}
]
}
}
}
}
{
"provider_id": "mock-payments-gb-redirect"
}
{
"status": "authorizing",
"authorization_flow": {
"actions": {
"next": {
"type": "redirect",
"uri": "https://pay-mock-connect.truelayer-sandbox.com/login/0bd4f72a-b508-4643-b5a0-eb90eab0f887#token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiIwYmQ0ZjcyYS1iNTA4LTQ2NDMtYjVhMC1lYjkwZWFiMGY4ODciLCJzY29wZSI6InBheS1tb2NrLWNvbm5lY3QtYXBpIiwibmJmIjoxNjc5NDEyMjk4LCJleHAiOjE2Nzk0MTU4OTgsImlzcyI6Imh0dHBzOi8vcGF5LW1vY2stY29ubmVjdC50cnVlbGF5ZXItc2FuZGJveC5jb20iLCJhdWQiOiJodHRwczovL3BheS1tb2NrLWNvbm5lY3QudHJ1ZWxheWVyLXNhbmRib3guY29tIn0.ksBNQV6H_Xhf7t6I9z9ZROblBFwwFz1HpM42autp37A"
}
}
}
}
EU redirect flow with additional inputs
Using the authorization_flow parameter at payment creation
authorization_flow parameter at payment creationThis is an example of a payment with an embedded flow in Germany, which uses the authorization_flow parameter at payment creation to start the flow. As the payment requires additional input, you need to complete the form action to authorise the payment.
The requests and responses include:
- The POST request sent to the
/v3/paymentsendpoint to create the payment.
This request includes theauthorization_flowparameter. The information provided in this parameter is the same as that provided to the/v3/payments/{id}/authorization-flowendpoint, as shown below. - The response returned from the
/v3/paymentsendpoint. This contains the paymentidandresource_token.
The response also contains theauthorization_flowobject, which states that the next action isprovider_selectionand provides a list of providers based on the filters in the payment creation request filters of the payment creation request. - The POST request sent to the
.../authorization-flow/actions/provider-selectionendpoint to submit the provider the user selected. - The response returned from the
.../authorization-flow/actions/provider-selectionendpoint, which contains theformaction. It also explains the format of the form, so you can render a UI that enables the user to provide the required information. - The POST request sent to the
.../authorization-flow/actions/formendpoint to submit the account details the user entered. - The response returned from the
.../authorization-flow/actions/formendpoint, which contains theredirectaction. This will redirect the user to their bank's login page, where they can confirm the payment.
{
"amount_in_minor": 1,
"currency": "EUR",
"authorization_flow": {
"provider_selection": {},
"redirect": {
"return_uri": "https://console.truelayer.com/redirect-page"
},
"form": {
"input_types": [
"text",
"text_with_image",
"select"
]
}
},
"payment_method": {
"type": "bank_transfer",
"provider_selection": {
"type": "user_selected",
"filter": {
"release_channel": "general_availability",
"countries": [
"DE"
]
}
},
"beneficiary": {
"type": "merchant_account",
"account_holder_name": "Merchant Account name",
"merchant_account_id": "2a485b0a-a29c-4aa2-bcef-b34d0f6f8d51"
}
},
"user":
{
"id": "f61c0ec7-0f83-414e-8e5f-aace86e0ed35",
"name": "Jonathan Sandbridge",
"email": "[email protected]",
"phone": "+44123456789",
"date_of_birth": "1992-11-28",
"address":
{
"address_line1": "1, Hardwick Street",
"city": "London",
"state": "London",
"zip": "EC1R 4RB",
"country_code": "GB"
}
}
}
{
"id": "486d54a5-e8f2-468f-91d8-47b72dc5a639",
"user": {
"id": "f61c0ec7-0f83-414e-8e5f-aace86e0ed35"
},
"resource_token": "eyJhbGciOiJSUzUxMiIsImtpZCI6IkRCejExcEFuUGNXVndqaFBNWERuckNyQ0ZrT1p0Y2FqYWtjU21GNmJiVk0iLCJ0eXAiOiJKV1QifQ.eyJzY29wZSI6InBheW1lbnQiLCJjbGllbnRfaWQiOiJzYW5kYm94LXRvbXRlc3QtYTRkNDMyIiwianRpIjoiNDg2ZDU0YTUtZThmMi00NjhmLTkxZDgtNDdiNzJkYzVhNjM5IiwibmJmIjoxNzE4MTEzNTg0LCJleHAiOjE3MTgxMTQ0ODQsImlzcyI6Imh0dHBzOi8vYXBpLnRydWVsYXllci1zYW5kYm94LmNvbS9wYXltZW50cy1nYXRld2F5IiwiYXVkIjoiaHR0cHM6Ly9hcGkudHJ1ZWxheWVyLXNhbmRib3guY29tIn0.fD1l9ljSWBBJUGi0hvZTB3Pg9Dn48FyyPjP1czYF9DJM4TmlD6eJvUDpHAjMluAeNOAZE51M5-CEVbxgOYMRJpqYCLh333YJo6EgLso-BE8jc6hBYgMU7kIZr6S4PD1ct68EQhg8W6QnfMJ4Z-Gk42kp5C96mcbPyxj8zi1xelEO4gOnnRGXZ4pGjjRwOHBQDDLa1ec3qn6jv9BpGLfuJp7FSSlxC-grIUXwFEJGWE_JjkQek5GCocPnyHWceDDV2F_3PVqqy8XHgxfl1IxCiILN2vU12qkYv8u50-1_wggIk2thXuN-Qo0GgivZUMTnBN4mRhSiDAm1mTANSsCCiQ",
"status": "authorizing",
"authorization_flow": {
"actions": {
"next": {
"type": "provider_selection",
"providers": [
{
"id": "mock-payments-de-embedded",
"display_name": "Mock European Payments – Embedded Flow",
"icon_uri": "https://providers-assets.truelayer.com/mock-payments-de-embedded/icon.svg",
"logo_uri": "https://providers-assets.truelayer.com/mock-payments-de-embedded/logo.svg",
"bg_color": "#44689a",
"country_code": "DE",
"schemes": [
{
"id": "sepa_credit_transfer"
},
{
"id": "sepa_credit_transfer_instant"
}
]
},
{
"id": "mock-payments-de-redirect",
"display_name": "Mock German Payments – Redirect Flow",
"icon_uri": "https://providers-assets.truelayer.com/mock-payments-de-redirect/icon.svg",
"logo_uri": "https://providers-assets.truelayer.com/mock-payments-de-redirect/logo.svg",
"bg_color": "#44689a",
"country_code": "DE",
"schemes": [
{
"id": "sepa_credit_transfer"
}
]
},
{
"id": "mock-payments-de-redirect-additional-input-text",
"display_name": "Mock German Payments – Redirect Flow with additional inputs",
"icon_uri": "https://providers-assets.truelayer.com/mock-payments-de-redirect-additional-input-text/icon.svg",
"logo_uri": "https://providers-assets.truelayer.com/mock-payments-de-redirect-additional-input-text/logo.svg",
"bg_color": "#44689a",
"country_code": "DE",
"schemes": [
{
"id": "sepa_credit_transfer"
}
]
}
]
}
}
}
}
{
"provider_id": "mock-payments-de-redirect-additional-input-text"
}
{
"status": "authorizing",
"authorization_flow": {
"actions": {
"next": {
"type": "form",
"inputs": [
{
"type": "text",
"id": "psu-branch-code",
"mandatory": true,
"display_text": {
"key": "psu-branch-code.display-text",
"default": "Branch"
},
"format": "any",
"sensitive": false,
"min_length": 3,
"max_length": 3,
"regexes": [
{
"regex": "^\\d{3}$",
"message": {
"key": "psu-branch-code.regex",
"default": "Value is invalid."
}
}
]
},
{
"type": "text",
"id": "psu-account-number",
"mandatory": true,
"display_text": {
"key": "psu-account-number.display-text",
"default": "Account"
},
"format": "numerical",
"sensitive": false,
"min_length": 7,
"max_length": 7,
"regexes": [
{
"regex": "^\\d{7}$",
"message": {
"key": "psu-account-number.regex",
"default": "Value is invalid."
}
}
]
},
{
"type": "text",
"id": "psu-sub-account",
"mandatory": true,
"display_text": {
"key": "psu-sub-account.display-text",
"default": "Sub-account"
},
"format": "numerical",
"sensitive": false,
"min_length": 2,
"max_length": 2,
"regexes": [
{
"regex": "^\\d{2}$",
"message": {
"key": "psu-sub-account.regex",
"default": "Value is invalid."
}
}
]
}
]
}
}
}
}
{
"inputs": {
"psu-branch-code": "123",
"psu-account-number":"1234567",
"psu-sub-account":"12"
}
}
{
"status": "authorizing",
"authorization_flow": {
"actions": {
"next": {
"type": "redirect",
"uri": "https://pay-mock-connect.truelayer-sandbox.com/login/c3e46a53-be1f-4969-a0bf-8654e241791e#token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJjM2U0NmE1My1iZTFmLTQ5NjktYTBiZi04NjU0ZTI0MTc5MWUiLCJzY29wZSI6InBheS1tb2NrLWNvbm5lY3QtYXBpIiwibmJmIjoxNzE4MTE2MDc0LCJleHAiOjE3MTgxMTk2NzQsImlzcyI6Imh0dHBzOi8vcGF5LW1vY2stY29ubmVjdC50cnVlbGF5ZXItc2FuZGJveC5jb20iLCJhdWQiOiJodHRwczovL3BheS1tb2NrLWNvbm5lY3QudHJ1ZWxheWVyLXNhbmRib3guY29tIn0.XI7ZRt6_9q_fkTMk69W0WsBMihcwjDAX_4rykoZCJAk"
}
}
}
}
Using the .../{id}/authorization-flow endpoint
.../{id}/authorization-flow endpointBelow is an example of a flow within the EU which requires additional inputs from the user. This example uses the dedicated .../{id}/authorization-flow endpoint to start the flow.
The requests and responses include:
- A POST request sent to the
/v3/payments/{id}/authorization-flowendpoint to start the authorisation flow. - The response returned from the
/v3/payments/{id}/authorization-flowendpoint. This contains a list of possible providers. This example contains 12 sandbox providers used to test different payment integrations. - A POST request sent to the
.../authorization-flow/actions/provider-selectionendpoint to submit the provider the user selected. - The response from the
.../authorization-flow/actions/provider-selectionendpoint. This contains extra information about what's required for the form. In this case, the user is asked to input their branch code, account number and sub-account number.
If theredirectaction is needed at this step, redirect the user to the link in theactions.next.uriobject. - A POST request sent to the
.../authorization-flow/actions/formendpoint to submit additional information for the form. - An example of the response after you submit the additional information needed for the form if there are no extra form actions to complete.
{
"provider_selection": {},
"redirect": {
"return_uri": "https://console.truelayer.com/redirect-page"
},
"form": {
"input_types": [
"text",
]
}
}
{
"status": "authorizing",
"authorization_flow": {
"actions": {
"next": {
"type": "provider_selection",
"providers": [
{
"id": "mock-payments-de-embedded",
"display_name": "Mock European Payments – Embedded Flow",
"icon_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/icons/mock-payments-de-embedded.svg",
"logo_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/logos/mock-payments-de-embedded.svg",
"bg_color": "#FFFFFF",
"country_code": "DE"
},
{
"id": "mock-payments-de-redirect",
"display_name": "Mock German Payments – Redirect Flow",
"icon_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/icons/mock-payments-es-redirect.svg",
"logo_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/logos/mock-payments-es-redirect.svg",
"bg_color": "#FFFFFF",
"country_code": "DE"
},
{
"id": "mock-payments-de-redirect-additional-input-text",
"display_name": "Mock German Payments – Redirect Flow with additional inputs",
"icon_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/icons/mock-payments-es-redirect.svg",
"logo_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/logos/mock-payments-es-redirect.svg",
"bg_color": "#FFFFFF",
"country_code": "DE"
},
{
"id": "mock-payments-es-redirect",
"display_name": "Mock Spain Payments – Redirect Flow",
"icon_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/icons/mock-payments-es-redirect.svg",
"logo_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/logos/mock-payments-es-redirect.svg",
"bg_color": "#FFFFFF",
"country_code": "ES"
},
{
"id": "mock-payments-fr-redirect",
"display_name": "Mock France Payments – Redirect Flow",
"icon_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/icons/mock-payments-es-redirect.svg",
"logo_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/logos/mock-payments-es-redirect.svg",
"bg_color": "#FFFFFF",
"country_code": "FR"
},
{
"id": "mock-payments-fr-redirect-additional-input",
"display_name": "Mock France Payments – Redirect Flow - Additional Input",
"icon_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/icons/mock-payments-es-redirect.svg",
"logo_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/logos/mock-payments-es-redirect.svg",
"bg_color": "#FFFFFF",
"country_code": "FR"
},
{
"id": "mock-payments-ie-redirect",
"display_name": "Mock Ireland Payments – Redirect Flow",
"icon_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/icons/mock-payments-es-redirect.svg",
"logo_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/logos/mock-payments-es-redirect.svg",
"bg_color": "#FFFFFF",
"country_code": "IE"
},
{
"id": "mock-payments-it-redirect",
"display_name": "Mock Italy Payments – Redirect Flow",
"icon_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/icons/mock-payments-es-redirect.svg",
"logo_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/logos/mock-payments-es-redirect.svg",
"bg_color": "#FFFFFF",
"country_code": "IT"
},
{
"id": "mock-payments-lt-redirect",
"display_name": "Mock Lithuania Payments – Redirect Flow",
"icon_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/icons/mock-payments-es-redirect.svg",
"logo_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/logos/mock-payments-es-redirect.svg",
"bg_color": "#FFFFFF",
"country_code": "LT"
},
{
"id": "mock-payments-nl-redirect",
"display_name": "Mock Netherlands Payments – Redirect Flow",
"icon_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/icons/mock-payments-es-redirect.svg",
"logo_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/logos/mock-payments-es-redirect.svg",
"bg_color": "#FFFFFF",
"country_code": "NL",
"search_aliases": [
"Mock Dutch Payments - Redirect Flow"
]
},
{
"id": "mock-payments-pl-redirect",
"display_name": "Mock Poland Payments – Redirect Flow",
"icon_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/icons/mock-payments-es-redirect.svg",
"logo_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/logos/mock-payments-es-redirect.svg",
"bg_color": "#FFFFFF",
"country_code": "PL"
},
{
"id": "mock-payments-pt-redirect",
"display_name": "Mock Portugal Payments – Redirect Flow",
"icon_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/icons/mock-payments-es-redirect.svg",
"logo_uri": "https://truelayer-provider-assets.s3.amazonaws.com/global/logos/mock-payments-es-redirect.svg",
"bg_color": "#FFFFFF",
"country_code": "PT"
}
]
}
}
}
}
{
"provider_id": "mock-payments-de-redirect-additional-input-text"
}
{
"status": "authorizing",
"authorization_flow": {
"actions": {
"next": {
"type": "form",
"inputs": [
{
"type": "text",
"id": "psu-branch-code",
"mandatory": true,
"display_text": {
"key": "psu-branch-code.display-text",
"default": "Branch"
},
"format": "any",
"sensitive": false,
"min_length": 3,
"max_length": 3,
"regexes": [
{
"regex": "^\\d{3}$",
"message": {
"key": "psu-branch-code.regex",
"default": "Value is invalid."
}
}
]
},
{
"type": "text",
"id": "psu-account-number",
"mandatory": true,
"display_text": {
"key": "psu-account-number.display-text",
"default": "Account"
},
"format": "numerical",
"sensitive": false,
"min_length": 7,
"max_length": 7,
"regexes": [
{
"regex": "^\\d{7}$",
"message": {
"key": "psu-account-number.regex",
"default": "Value is invalid."
}
}
]
},
{
"type": "text",
"id": "psu-sub-account",
"mandatory": true,
"display_text": {
"key": "psu-sub-account.display-text",
"default": "Sub-account"
},
"format": "numerical",
"sensitive": false,
"min_length": 2,
"max_length": 2,
"regexes": [
{
"regex": "^\\d{2}$",
"message": {
"key": "psu-sub-account.regex",
"default": "Value is invalid."
}
}
]
}
]
}
}
}
}
{
"inputs": {
"psu-branch-code": "123",
"psu-account-number":"1234567",
"psu-sub-account":"12"
}
}
{
"status": "authorizing",
"authorization_flow": {
"actions": {
"next": {
"type": "redirect",
"uri": "https://pay-mock-connect.truelayer-sandbox.com/login/bed1030c-b2c5-4f49-ad67-d63a0d51e854#token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJiZWQxMDMwYy1iMmM1LTRmNDktYWQ2Ny1kNjNhMGQ1MWU4NTQiLCJzY29wZSI6InBheS1tb2NrLWNvbm5lY3QtYXBpIiwibmJmIjoxNjc5NTgyODk5LCJleHAiOjE2Nzk1ODY0OTksImlzcyI6Imh0dHBzOi8vcGF5LW1vY2stY29ubmVjdC50cnVlbGF5ZXItc2FuZGJveC5jb20iLCJhdWQiOiJodHRwczovL3BheS1tb2NrLWNvbm5lY3QudHJ1ZWxheWVyLXNhbmRib3guY29tIn0.9Sc660VEPaYP-dDAqJ_0uhXyOCqNIV4dHOVdm35g4UE"
}
}
}
}
Updated 5 months ago
