BANCOMPAT PAY
BANCOMAT Pay is an Italian service that allows consumers to transfer money and buy goods and services. Transactions are online. Consumers can also use BANCOMAT Pay to pay invoices, taxes and so on.
Payment method properties
Markets | IT |
Processing currencies | EUR |
Consumer currencies | EUR |
Settlement currencies | EUR |
Authentication methods | REDIRECT |
Authentication timeout | 1 hour |
Minimum payment amount | 0.01 EUR |
Maximum payment amount | No limit. Based on the consumer's bank account balance or the individual bank's rules on the transaction limit. |
Payment instrument | PASSTHROUGH_WALLET |
Recurring payments | No |
Separate captures | No |
Refund | Full - Partial - Multiple |
Refund validity | 12 months |
Disputes | Yes |
Sandbox availability | PPRO mock processor |
Make an BANCOMAT PAY payment
Bancomat Pay payments follow our standardized REDIRECT
payment flow. We recommend including all relevant settings for any authentication methods you support.
To create an Bancomat Pay payment, you'll need to provide the following data at minimum when calling our payment charges API:
Field | Description |
---|---|
paymentMethod | BANCOMATPAY |
amount.value | The amount to be paid in the smallest units of the currency used. |
amount.currency | EUR |
consumer.country | The country where the consumer is shopping |
authenticationSettings: REDIRECT settings.returnUrl | Specify the URL to which the consumer should be redirected after completing the payment. |
Redirect Flow
- When checking out on the Merchant’s website, the consumer selects the Bancomat pay.
- Merchant sends the payment request to PPRO.
- PPRO redirects the consumer to a page to enter the mobile number that they used to register with Bancomat pay.
- Bancomat pay calls up the Issuer Bank system to check on the validity of the mobile number. If it’s valid the issuer bank so sends a push notification to the consumer’s mobile banking App.
- The consumer clicks the notification to activate the App to confirm the payment detail.
- The consumer authorises the payment.
- The issuer bank checks the amount in the bank account and approve or decline the request.
- The payment result is displayed in the App to the consumer and the result notification is sent to PPRO and merchant.
Request
POST /v1/payment-charges
{
"paymentMethod": "BANCOMATPAY",
"amount": {
"value": 1000,
"currency": "EUR"
},
"consumer": {
"country": "IT"
},
"authenticationSettings": [
{
"type": "REDIRECT",
"settings": {
"returnUrl": "https://www.webshop.com/order-results-page"
}
}
]
}
Response
You'll receive our standard payment charge response with the available authentication methods:
{
"id": "charge_Y3JVzvEaJpvG53xd2R2Zt",
"paymentMethod": "BANCOMATPAY",
"paymentMedium": "ECOMMERCE",
"scheduleType": "UNSCHEDULED",
"instrumentId": "instr_Asu0ig2PXXZSiNrhY44A5",
"currency": "USD",
"country": "US",
"status": "AUTHENTICATION_PENDING",
"consumer": {
"country": "US"
},
"authenticationMethods": [
{
"details": {
"requestUrl": "https://redirection-target.ppro.com",
"requestMethod": "GET"
},
"type": "REDIRECT"
}
],
"authorizations": [
{
"id": "authz_aPobet0FNZNU1bYqfexFd",
"amount": 1000,
"status": "AUTHENTICATION_PENDING",
"createdAt": "2025-06-21T08:34:20.766Z",
"updatedAt": "2025-06-21T08:34:20.766Z"
}
],
"captures": [],
"refunds": [],
"voids": [],
"createdAt": "2025-06-21T08:34:20.114Z",
"updatedAt": "2025-06-21T08:34:20.766Z",
"_links": {
"authorizations": {
"href": "/v1/payment-charges/charge_Y3JVzvEaJpvG53xd2R2Zt/authorizations"
},
"captures": {
"href": "/v1/payment-charges/charge_Y3JVzvEaJpvG53xd2R2Zt/captures"
},
"refunds": {
"href": "/v1/payment-charges/charge_Y3JVzvEaJpvG53xd2R2Zt/refunds"
},
"voids": {
"href": "/v1/payment-charges/charge_Y3JVzvEaJpvG53xd2R2Zt/voids"
}
}
}
Direct Flow
- When checking out on the Merchant’s website, the consumer selects the BANCOMAT Pay® button from the methods presented, entering their mobile phone number.
- The payment request is sent to PPRO gateway which calls up the BANCOMAT Pay® Platform for the payment initiation.
- The BANCOMAT Pay® Platform checks the mobile number is valid and calls up the issuer bank system to make a push notification to the consumer's mobile banking App.
- The consumer activates the App and confirms the payment detail.
- The consumer authorises the payment.
- The issuer bank checks if there's sufficient amount in the consumer's bank account and debits the amount in real time.
- The payment result is displayed in the mobile banking APP and the payment notification is sent from Bancomat platform to PPRO and to the merchant.
Request
POST /v1/payment-charges
{
"paymentMethod": "BANCOMATPAY",
"amount": {
"value": 1000,
"currency": "EUR"
},
"consumer": {
"country": "IT",
"phone" : "+391234567890"
},
"authenticationSettings": [
{
"type": "REDIRECT",
"settings": {
"returnUrl": "https://www.webshop.com/order-results-page"
}
}
]
}
Response
You'll receive our standard payment charge response with the available authentication methods:
{
"id": "charge_Y3JVzvEaJpvG53xd2R2Zt",
"paymentMethod": "BANCOMATPAY",
"paymentMedium": "ECOMMERCE",
"scheduleType": "UNSCHEDULED",
"instrumentId": "instr_Asu0ig2PXXZSiNrhY44A5",
"currency": "USD",
"country": "US",
"status": "AUTHENTICATION_PENDING",
"consumer": {
"country": "US"
},
"authenticationMethods": [
{
"details": {
"requestUrl": "https://redirection-target.ppro.com",
"requestMethod": "GET"
},
"type": "REDIRECT"
}
],
"authorizations": [
{
"id": "authz_aPobet0FNZNU1bYqfexFd",
"amount": 1000,
"status": "AUTHENTICATION_PENDING",
"createdAt": "2025-06-21T08:34:20.766Z",
"updatedAt": "2025-06-21T08:34:20.766Z"
}
],
"captures": [],
"refunds": [],
"voids": [],
"createdAt": "2025-06-21T08:34:20.114Z",
"updatedAt": "2025-06-21T08:34:20.766Z",
"_links": {
"authorizations": {
"href": "/v1/payment-charges/charge_Y3JVzvEaJpvG53xd2R2Zt/authorizations"
},
"captures": {
"href": "/v1/payment-charges/charge_Y3JVzvEaJpvG53xd2R2Zt/captures"
},
"refunds": {
"href": "/v1/payment-charges/charge_Y3JVzvEaJpvG53xd2R2Zt/refunds"
},
"voids": {
"href": "/v1/payment-charges/charge_Y3JVzvEaJpvG53xd2R2Zt/voids"
}
}
}
Handling the payment result
REDIRECT
- After the consumer completes the payment, they are redirected to the
returnUrl
specified in the payment charge creation request. - Upon redirect back to your site, retrieve the latest payment status by performing a GET /v1/payment-charges/{paymentChargeId}. Use the returned
status
field to determine and display the final payment outcome to the consumer. - Additionally, webhooks are triggered to notify you of the payment result. This ensures you receive the outcome even if the consumer closes their browser or fails to return to your website.
Updated about 23 hours ago