Bancontact
DC Integration option
Payment
Payment Flow
- The customer initiates the payment on the merchant's website.
- The merchant sends a payment request to PaySage.io.
- PaySage.io responds with a link to the payment page.
- The merchant redirects the customer to the payment page.
- The customer completes the payment.
- PaySage.io sends a webhook notification with the payment status to the merchant.
Info
This integration option supports only EUR currency.
Request
Send a payment request with the following additional data:
| Parameter | Type | Description |
|---|---|---|
| request | object | |
| return_url * required |
string | URL to return the customer to when the transaction is completed. |
| ip | string | The customer's IP address. |
| method | object | A section of the payment method information. |
| type * required |
string | bancontact |
| customer | object | A section of the customer details. |
| first_name * required |
string | The customer's first name. |
| last_name * required |
string | The customer's last name. |
| string | The customer's email address. | |
| phone | string | The customer's phone number. |
| city | string | The customer's billing city. |
| address | string | The customer's billing address. |
| zip | string | The customer's billing ZIP or postal code. |
| birth_date | string | The customer's date of birth in the ISO 8601 format (YYYY-MM-DD). |
Request example
{
"request": {
"amount": 500,
"currency": "EUR",
"description": "description",
"test": true,
"return_url": "https://return.com",
"language": "en",
"customer": {
"first_name": "John",
"last_name": "Doe"
},
"method": {
"type": "bancontact"
}
}
}
Response
Redirect your customer to the URL received as the value of the form.action parameter.
Response example
{
"transaction": {
"uid": "e4eaad77-c646-481a-9d3a-a4588aecd35b",
"type": "payment",
"status": "pending",
"amount": 500,
"currency": "EUR",
"description": "description",
"created_at": "2025-04-08T13:50:34Z",
"updated_at": "2025-04-08T13:50:35Z",
"method_type": "bancontact",
"receipt_url": "https://backoffice.paysage.io/customer/transactions/e4eaad77-c646-481a-9d3a-a4588aecd35b/f63ef715c6631756d00f141d275cfd1eb5d240ff359af06626accf00b6c5e55f?language=en",
"payment": {
"status": "pending",
"gateway_id": 5220,
"ref_id": "e3c562bc360df85df898",
"message": "Transaction was initialized."
},
"bancontact": {
"type": "bancontact"
},
"customer": {
"first_name": "John",
"last_name": "Doe",
"email": null,
"ip": null
},
"manually_corrected_at": null,
"version": 0,
"message": "Transaction was initialized.",
"test": true,
"language": "en",
"billing_address": {
"first_name": "John",
"last_name": "Doe"
},
"additional_data": {
"payment_method": {
"type": "alternative"
}
},
"gateway": {
"iframe": false
},
"form": {
"action": "link-to-payment-page",
"method": "GET",
"fields": []
}
}
}
PG Integration option
Payment
Payment Flow
- The customer initiates the payment on the merchant's website.
- The merchant sends a payment request to PaySage.io.
- PaySage.io responds with a link to the payment page.
- The merchant redirects the customer to the payment page.
- The customer completes the payment.
- PaySage.io sends a webhook notification with the payment status to the merchant.
Info
This integration option supports only EUR currency.
Request
Send a payment request with the following additional data:
| Parameter | Type | Description |
|---|---|---|
| request | object | |
| return_url * required |
string | URL to return the customer to when the transaction is completed. |
| ip | string | The customer's IP address. |
| method | object | A section of the payment method information. |
| type * required |
string | bancontact |
| customer | object | A section of the customer details. |
| first_name * required |
string | The customer's first name. |
| last_name * required |
string | The customer's last name. |
| string | The customer's email address. | |
| phone | string | The customer's phone number. |
| city | string | The customer's billing city. |
| address | string | The customer's billing address. |
| zip | string | The customer's billing ZIP or postal code. |
| birth_date | string | The customer's date of birth in the ISO 8601 format (YYYY-MM-DD). |
Request example
{
"request": {
"amount": 500,
"currency": "EUR",
"description": "description",
"test": true,
"return_url": "https://return.com",
"language": "en",
"customer": {
"first_name": "John",
"last_name": "Doe"
},
"method": {
"type": "bancontact"
}
}
}
Response
Redirect your customer to the URL received as the value of the form.action parameter.
Response example
{
"transaction": {
"uid": "e4eaad77-c646-481a-9d3a-a4588aecd35b",
"type": "payment",
"status": "pending",
"amount": 500,
"currency": "EUR",
"description": "description",
"created_at": "2025-04-08T13:50:34Z",
"updated_at": "2025-04-08T13:50:35Z",
"method_type": "bancontact",
"receipt_url": "https://backoffice.paysage.io/customer/transactions/e4eaad77-c646-481a-9d3a-a4588aecd35b/f63ef715c6631756d00f141d275cfd1eb5d240ff359af06626accf00b6c5e55f?language=en",
"payment": {
"status": "pending",
"gateway_id": 5220,
"ref_id": "e3c562bc360df85df898",
"message": "Transaction was initialized."
},
"bancontact": {
"type": "bancontact"
},
"customer": {
"first_name": "John",
"last_name": "Doe",
"email": null,
"ip": null
},
"manually_corrected_at": null,
"version": 0,
"message": "Transaction was initialized.",
"test": true,
"language": "en",
"billing_address": {
"first_name": "John",
"last_name": "Doe"
},
"additional_data": {
"payment_method": {
"type": "alternative"
}
},
"gateway": {
"iframe": false
},
"form": {
"action": "link-to-payment-page",
"method": "GET",
"fields": []
}
}
}
CA Integration option
Payment
Payment Flow
- The customer initiates the payment on the merchant's website.
- The merchant sends a payment request to PaySage.io.
- PaySage.io responds with a link to the payment page.
- The merchant redirects the customer to the payment page.
- The customer completes the payment.
- PaySage.io sends a webhook notification with the payment status to the merchant.
Info
This integration option supports only EUR currency.
Request
Send a payment request with the following additional data:
|
|||||||||||||||||||||||||||||||||||||
Request example
{
"request": {
"amount": 1010,
"currency": "EUR",
"description": "description",
"skip_duplicate_check": true,
"test": false,
"tracking_id": "189",
"notification_url": "https://notification-url",
"return_url": "https://return-url",
"ip": "127.0.0.1",
"language": "en",
"customer": {
"first_name": "John",
"last_name": "Doe",
"country": "BE",
"city": "Antwerpen",
"zip": "2018",
"email": "john@example.com",
"address": "1st Street",
"phone": "17777777777",
"external_id": "123bh7"
},
"method": {
"type": "bancontact"
}
}
}
Response
Redirect the customer to the URL received as the value of the form.action parameter.
Response example
{
"transaction": {
"uid": "b9265cbb-1a18-4276-ba32-7508a93eec4d",
"type": "payment",
"status": "pending",
"amount": 1010,
"currency": "EUR",
"description": "description",
"created_at": "2026-04-23T13:57:16Z",
"updated_at": "2026-04-23T13:57:16Z",
"method_type": "bancontact",
"receipt_url": "https://backoffice.paysage.io/customer/transactions/b9265cbb-1a18-4276-ba32-7508a93eec4d/3d8e6b0e0d2a8ef787d70cc3d150496681e7a1b388f4602c36e41e77cb37c673?language=en",
"payment": {
"status": "pending",
"gateway_id": 6539,
"ref_id": "ca096dc9-4924-4b67-869f-2ed3ace1c579",
"message": "Transaction was initialized."
},
"bancontact": {
"type": "bancontact",
"use_pending_page": true
},
"customer": {
"zip": "2018",
"city": "Antwerpen",
"email": "john@example.com",
"phone": "17777777777",
"address": "1st Street",
"country": "BE",
"last_name": "Doe",
"first_name": "John",
"external_id": "123bh7",
"ip": "127.0.0.1"
},
"manually_corrected_at": null,
"version": 2,
"message": "Transaction was initialized.",
"tracking_id": "189",
"test": false,
"language": "en",
"billing_address": {
"zip": "2018",
"city": "Antwerpen",
"email": "john@example.com",
"phone": "17777777777",
"address": "1st Street",
"country": "BE",
"last_name": "Doe",
"first_name": "John"
},
"additional_data": {
"payment_method": {
"type": "alternative"
}
},
"smart_routing_verification": {
"status": "successful"
},
"gateway": {
"iframe": false
},
"form": {
"action": "link-to-payment-page",
"fields": [],
"method": "GET"
}
}
}