Billing Request Flow
Billing Request Flows can be created to enable a payer to authorise a payment created for a scheme with strong payer authorisation (such as open banking single payments).
Create a Billing Request Flow#
/billing_request_flowsCreates a new billing request flow.
Request Body
billing_request_flowsobject14 properties
auto_fulfilboolean
(Experimental feature) Fulfil the Billing Request on completion of the flow (true by default). Disabling the auto_fulfil is not allowed currently.
customer_details_capturedboolean
Identifies whether a Billing Request belongs to a specific customer
lock_bank_accountboolean
If true, the payer will not be able to change their bank account within the flow. If the bank_account details are collected as part of bank_authorisation then GC will set this value to true mid flow.
You can only lock bank account if these have already been completed as a part of the billing request.
lock_currencyboolean
If true, the payer will not be able to change their currency/scheme manually within the flow. Note that this only applies to the mandate only flows - currency/scheme can never be changed when there is a specified subscription or payment.
lock_customer_detailsboolean
If true, the payer will not be able to edit their customer details within the flow. If the customer details are collected as part of bank_authorisation then GC will set this value to true mid flow.
You can only lock customer details if these have already been completed as a part of the billing request.
show_redirect_buttonsboolean
If true, the payer will be able to see redirect action buttons on Thank You page. These action buttons will provide a way to connect back to the billing request flow app if opened within a mobile app. For successful flow, the button will take the payer back the billing request flow where they will see the success screen. For failure, button will take the payer to url being provided against exit_uri field.
show_success_redirect_buttonboolean
If true, the payer will be able to see a redirect action button on the Success page. This action button will provide a way to redirect the payer to the given redirect_uri. This functionality is helpful when merchants do not want payers to be automatically redirected or on Android devices, where automatic redirections are not possible.
redirect_uristring
URL that the payer can be redirected to after completing the request flow.
skip_success_screenboolean
If true, the payer will not be redirected to the success screen after completing the flow. A redirect_uri needs to be provided for this parameter to be taken into account.
exit_uristring
URL that the payer can be taken to if there isn't a way to progress ahead in flow, for example if the customer searches for a bank that doesn't exist or isn't supported on the scheme.
prefilled_customerobject
Customer information used to prefill the payment page so your customer doesn't have to re-type details you already hold about them. It will be stored unvalidated and the customer will be able to review and amend it before completing the form.
13 properties
emailstring
Customer's email address.
given_namestring
Customer's first name.
family_namestring
Customer's surname.
company_namestring
Customer's company name. Company name should only be provided if given_name and family_name are null.
address_line1string
The first line of the customer's address.
address_line2string
The second line of the customer's address.
address_line3string
The third line of the customer's address.
citystring
The city of the customer's address.
regionstring
The customer's address region, county or department.
postal_codestring
The customer's postal code.
country_codestring
swedish_identity_numberstring
For Swedish customers only. The civic/company number (personnummer, samordningsnummer, or organisationsnummer) of the customer.
danish_identity_numberstring
For Danish customers only. The civic/company number (CPR or CVR) of the customer.
prefilled_bank_accountobject
Bank account information used to prefill the payment page so your customer doesn't have to re-type details you already hold about them. It will be stored unvalidated and the customer will be able to review and amend it before completing the form.
1 properties
account_typestring
Bank account type for USD-denominated bank accounts. Must not be provided for bank accounts in other currencies. See local details for more information.
savingscheckinglanguagestring
Sets the default language of the Billing Request Flow and the customer. ISO 639-1 code.
linksobject
1 properties
billing_requeststring
ID of the billing request against which this flow was created.
Response 201
Resource created successfully
billing_request_flowsobject19 properties
idstring
Unique identifier, beginning with "BRF".
redirect_uristring
URL that the payer can be redirected to after completing the request flow.
skip_success_screenboolean
If true, the payer will not be redirected to the success screen after completing the flow. A redirect_uri needs to be provided for this parameter to be taken into account.
exit_uristring
URL that the payer can be taken to if there isn't a way to progress ahead in flow, for example if the customer searches for a bank that doesn't exist or isn't supported on the scheme.
show_redirect_buttonsboolean
If true, the payer will be able to see redirect action buttons on Thank You page. These action buttons will provide a way to connect back to the billing request flow app if opened within a mobile app. For successful flow, the button will take the payer back the billing request flow where they will see the success screen. For failure, button will take the payer to url being provided against exit_uri field.
show_success_redirect_buttonboolean
If true, the payer will be able to see a redirect action button on the Success page. This action button will provide a way to redirect the payer to the given redirect_uri. This functionality is helpful when merchants do not want payers to be automatically redirected or on Android devices, where automatic redirections are not possible.
authorisation_urlstring
URL for a GC-controlled flow which will allow the payer to fulfil the billing request
created_atstring
Timestamp when the flow was created
expires_atstring
Timestamp when the flow will expire. Each flow currently lasts for 7 days.
session_tokenstring
Session token populated when responding to the initialise action
auto_fulfilboolean
(Experimental feature) Fulfil the Billing Request on completion of the flow (true by default). Disabling the auto_fulfil is not allowed currently.
lock_bank_accountboolean
If true, the payer will not be able to change their bank account within the flow. If the bank_account details are collected as part of bank_authorisation then GC will set this value to true mid flow.
You can only lock bank account if these have already been completed as a part of the billing request.
lock_currencyboolean
If true, the payer will not be able to change their currency/scheme manually within the flow. Note that this only applies to the mandate only flows - currency/scheme can never be changed when there is a specified subscription or payment.
lock_customer_detailsboolean
If true, the payer will not be able to edit their customer details within the flow. If the customer details are collected as part of bank_authorisation then GC will set this value to true mid flow.
You can only lock customer details if these have already been completed as a part of the billing request.
prefilled_customerobject
Customer information used to prefill the payment page so your customer doesn't have to re-type details you already hold about them. It will be stored unvalidated and the customer will be able to review and amend it before completing the form.
13 properties
emailstring
Customer's email address.
given_namestring
Customer's first name.
family_namestring
Customer's surname.
company_namestring
Customer's company name. Company name should only be provided if given_name and family_name are null.
address_line1string
The first line of the customer's address.
address_line2string
The second line of the customer's address.
address_line3string
The third line of the customer's address.
citystring
The city of the customer's address.
regionstring
The customer's address region, county or department.
postal_codestring
The customer's postal code.
country_codestring
swedish_identity_numberstring
For Swedish customers only. The civic/company number (personnummer, samordningsnummer, or organisationsnummer) of the customer.
danish_identity_numberstring
For Danish customers only. The civic/company number (CPR or CVR) of the customer.
prefilled_bank_accountobject
Bank account information used to prefill the payment page so your customer doesn't have to re-type details you already hold about them. It will be stored unvalidated and the customer will be able to review and amend it before completing the form.
1 properties
account_typestring
Bank account type for USD-denominated bank accounts. Must not be provided for bank accounts in other currencies. See local details for more information.
savingscheckinglanguagestring
Sets the default language of the Billing Request Flow and the customer. ISO 639-1 code.
linksobject
1 properties
billing_requeststring
ID of the billing request against which this flow was created.
customer_details_capturedboolean
Identifies whether a Billing Request belongs to a specific customer
Errors 400401404422500
Bad Request
Unauthorised
Not found
Validation Error
Internal Error
Error Body
codeintegerdocumentation_urlstringerrorsarray2 properties
reasonstringmessagestringmessagestringrequest_idstringtypestringmetadataobjectlinksobjectInitialise a Billing Request Flow#
/billing_request_flows/{billing_request_flow_id}/actions/initialiseReturns the flow having generated a fresh session token which can be used to power integrations that manipulate the flow.
Path Parameters
| Name | Type | Description |
|---|---|---|
billing_request_flow_idrequired | string | The billing request flow id |
Response 200
Action completed successfully
billing_request_flowsobject19 properties
idstring
Unique identifier, beginning with "BRF".
redirect_uristring
URL that the payer can be redirected to after completing the request flow.
skip_success_screenboolean
If true, the payer will not be redirected to the success screen after completing the flow. A redirect_uri needs to be provided for this parameter to be taken into account.
exit_uristring
URL that the payer can be taken to if there isn't a way to progress ahead in flow, for example if the customer searches for a bank that doesn't exist or isn't supported on the scheme.
show_redirect_buttonsboolean
If true, the payer will be able to see redirect action buttons on Thank You page. These action buttons will provide a way to connect back to the billing request flow app if opened within a mobile app. For successful flow, the button will take the payer back the billing request flow where they will see the success screen. For failure, button will take the payer to url being provided against exit_uri field.
show_success_redirect_buttonboolean
If true, the payer will be able to see a redirect action button on the Success page. This action button will provide a way to redirect the payer to the given redirect_uri. This functionality is helpful when merchants do not want payers to be automatically redirected or on Android devices, where automatic redirections are not possible.
authorisation_urlstring
URL for a GC-controlled flow which will allow the payer to fulfil the billing request
created_atstring
Timestamp when the flow was created
expires_atstring
Timestamp when the flow will expire. Each flow currently lasts for 7 days.
session_tokenstring
Session token populated when responding to the initialise action
auto_fulfilboolean
(Experimental feature) Fulfil the Billing Request on completion of the flow (true by default). Disabling the auto_fulfil is not allowed currently.
lock_bank_accountboolean
If true, the payer will not be able to change their bank account within the flow. If the bank_account details are collected as part of bank_authorisation then GC will set this value to true mid flow.
You can only lock bank account if these have already been completed as a part of the billing request.
lock_currencyboolean
If true, the payer will not be able to change their currency/scheme manually within the flow. Note that this only applies to the mandate only flows - currency/scheme can never be changed when there is a specified subscription or payment.
lock_customer_detailsboolean
If true, the payer will not be able to edit their customer details within the flow. If the customer details are collected as part of bank_authorisation then GC will set this value to true mid flow.
You can only lock customer details if these have already been completed as a part of the billing request.
prefilled_customerobject
Customer information used to prefill the payment page so your customer doesn't have to re-type details you already hold about them. It will be stored unvalidated and the customer will be able to review and amend it before completing the form.
13 properties
emailstring
Customer's email address.
given_namestring
Customer's first name.
family_namestring
Customer's surname.
company_namestring
Customer's company name. Company name should only be provided if given_name and family_name are null.
address_line1string
The first line of the customer's address.
address_line2string
The second line of the customer's address.
address_line3string
The third line of the customer's address.
citystring
The city of the customer's address.
regionstring
The customer's address region, county or department.
postal_codestring
The customer's postal code.
country_codestring
swedish_identity_numberstring
For Swedish customers only. The civic/company number (personnummer, samordningsnummer, or organisationsnummer) of the customer.
danish_identity_numberstring
For Danish customers only. The civic/company number (CPR or CVR) of the customer.
prefilled_bank_accountobject
Bank account information used to prefill the payment page so your customer doesn't have to re-type details you already hold about them. It will be stored unvalidated and the customer will be able to review and amend it before completing the form.
1 properties
account_typestring
Bank account type for USD-denominated bank accounts. Must not be provided for bank accounts in other currencies. See local details for more information.
savingscheckinglanguagestring
Sets the default language of the Billing Request Flow and the customer. ISO 639-1 code.
linksobject
1 properties
billing_requeststring
ID of the billing request against which this flow was created.
customer_details_capturedboolean
Identifies whether a Billing Request belongs to a specific customer
Errors 400401404422500
Bad Request
Unauthorised
Not found
Validation Error
Internal Error
Error Body
codeintegerdocumentation_urlstringerrorsarray2 properties
reasonstringmessagestringmessagestringrequest_idstringtypestringmetadataobjectlinksobject