When to use this
Onboarding a customer for Direct Debit, Bacs, SEPA, or open-banking payments. Paytia hosts the form so your systems stay out of PCI scope.
Endpoint
POST https://accounts.paytia.com/api/payment_service
Try it
Paste your sandbox key, edit any field, and hit Execute. Nothing is stored — the key travels to the Paytia proxy and the response comes straight back.
Sandbox or live key — nothing is stored.
String: WEBHOOK TRANSACTION URL FOR PAYMENT STAGE (URL on which we will send payment gateway response to the third party)
String: A 'UNQUIQUE' ID value for the transaction. This is passed back with each webhook response so you can track the transaction flow.
String: The value to be sent should be "bank".
Set this value to 3
String: The available values for this field are: create: for later use, allows the post of sensitive data to Paytia for encryption, token generation, and storage. retrieve: allows retrieval of a token in case the webhook return process failed. remove: allows requesting the deletion of a customer's bank account details from the Paytia service.
String: WEBHOOK URL FOR PAYMENT STAGE (Specify the call back URL you want to receive webhook notifications to) (In the case of linktopay: this will be the linktopay_url you want the Link to pay response to be sent)
String: First name of the card holder
String: Last name (surname) of the card holder
Integer: Enum (0 - 2)This controls Paytia returning the form the agent will see showing/allowing the payment data to be captured 0 = It will not return Iframe url 1 = It will return Iframe url in response 2 = blank request accepted and will return Iframe url 0 is active by default Note: Set agent form to 0 if using payment links with a bot service where no agent is involved.
curl --location --request POST 'https://accounts.paytia.com/api/payment_service' \
--header 'X-API-KEY: YOUR_API_KEY' \
--form 'webhook_url_transaction={ADD YOUR WEBHOOK URL HERE}' \
--form 'reference_id={unique session reference}' \
--form 'mode=bank' \
--form 'web _agent_form=3' \
--form 'token_mode=create' \
--form 'webhook_url={ADD YOUR WEBHOOK URL HERE}' \
--form 'firstname=Firstname' \
--form 'lastname=Lastname' \
--form 'web_agent_form=3'No response yet. Paste your key, tweak the values, and click Execute.
Fields
Full field-by-field reference below. Required vs optional varies by flow — the try-it explorer above starts with sensible defaults.
| Field | Type | Description |
|---|---|---|
| webhook_url_transaction | text | String: WEBHOOK TRANSACTION URL FOR PAYMENT STAGE (URL on which we will send payment gateway response to the third party) |
| reference_id | text | String: A 'UNQUIQUE' ID value for the transaction. This is passed back with each webhook response so you can track the transaction flow. |
| mode | text | String: The value to be sent should be "bank". |
| web _agent_form | text | Set this value to 3 |
| token_mode | text | String: The available values for this field are: create: for later use, allows the post of sensitive data to Paytia for encryption, token generation, and storage. retrieve: allows retrieval of a token in case the webhook return process failed. remove: allows requesting the deletion of a customer's bank account details from the Paytia service. |
| webhook_url | text | String: WEBHOOK URL FOR PAYMENT STAGE (Specify the call back URL you want to receive webhook notifications to) (In the case of linktopay: this will be the linktopay_url you want the Link to pay response to be sent) |
| firstname | text | String: First name of the card holder |
| lastname | text | String: Last name (surname) of the card holder |
| web_agent_form | select | Integer: Enum (0 - 2)This controls Paytia returning the form the agent will see showing/allowing the payment data to be captured 0 = It will not return Iframe url 1 = It will return Iframe url in response 2 = blank request accepted and will return Iframe url 0 is active by default Note: Set agent form to 0 if using payment links with a bot service where no agent is involved. |