Payment details
Payment V3 API (3.6.3)
APIs intended to support the merchant/partner's payment flow on creation, cancellation, search and refunds.
https://docs.payconiq.be/_mock/apis/merchant-payment.openapi/
https://merchant.api.preprod.bancontact.net/
https://merchant.api.bancontact.net/
Request
This API is intended for merchants requiring information on a specific payment. Onboarded merchants should have api keys for each profile, the api key will carry the profileId information required to find the correct creditor in the merchant-service
The token/api-key necessary to call this endpoint must contain:
subjectType
:INTEGRATOR:{CCV_ID}
orMERCHANT:{ID}
resource
:PAYMENTPROFILE:{profileId}
,authority
:MERCHANT_PAYMENT
- Mock server
https://docs.payconiq.be/_mock/apis/merchant-payment.openapi/v3/payments/{id}
- PREPROD merchant API
https://merchant.api.preprod.bancontact.net/v3/payments/{id}
- PROD merchant API
https://merchant.api.bancontact.net/v3/payments/{id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.payconiq.be/_mock/apis/merchant-payment.openapi/v3/payments/{id}' \
-H 'Authorization: YOUR_API_KEY_HERE'
if the payment is SUCCEEDED, then this field represents the date-time on which the payment was SUCCEEDED
Status | Description |
---|---|
PENDING | The merchant has created the payment and and is pending to proceed with identify step. |
IDENTIFIED | The user has scanned the payment's QR code with the Payconiq By Bancontact APP. |
AUTHORIZED | The user has confirmed the payment and the bank authorized it. |
AUTHORIZATION_FAILED | The authorization with the bank failed. |
FAILED | Something went wrong during the payment process(e.g authorization failed). |
SUCCEEDED | The payment has succeeded. |
CANCELLED | When the payment has been canceled after the user has scanned it, or the merchant has cancelled the payment. |
EXPIRED | The payment has expired. |
PENDING_MERCHANT_ACKNOWLEDGEMENT | The payment is waiting for the merchant to acknowledge. |
VOIDED | The payment has been voided |
Creditor account set to receive the payment
Creditor's Bank Account Iban to where the money will be sent to for this current payment
callbackUrl to which the merchant will be notified about the payment identification
Amount in cents originally requested. If no amount was requested by creditor, this will be 0
Merchant payment reference, used to reference the Bancontact Payconiq Company payment. The characters used must comply with the SEPA Requirements for an Extended Character Set (UNICODE Subset) - Best Practices | European Payments Council. in the merchant's system
Field used to reference a bulk batch, so the merchant can choose how to bulk the payments. Mandatory if merchant profile does have bulking enabled, otherwise will miss from the response. If it's not set in the create call it will default to the value configured in the profile if it exists, otherwise its value will be defaulted by the application.
{ "paymentId": "5f91483d-78a7-4914-bc6f=", "createdAt": "2019-08-24T14:15:22Z", "expireAt": "2019-08-24T14:15:22Z", "succeededAt": "2019-08-24T14:15:22Z", "currency": "EUR", "status": "PENDING", "creditor": { "profileId": "07e998f9-d932-4848-8b60-d5b5ae94b1b2", "merchantId": "dee718bb-3b6d-4312-9404-3d63d14529cc", "name": "John", "iban": "BE12 3456 7890 1234", "identifyCallbackUrl": "https://api.merchant.bancontact.net/identify", "callbackUrl": "https://api.merchant.bancontact.net/payment" }, "debtor": { "name": "John", "iban": "*************12636" }, "amount": 0, "description": "5 coke.", "message": "Money send.", "reference": "19848995", "bulkId": "Bulk-1-200", "_links": { "self": { … }, "deeplink": { … }, "qrcode": { … }, "cancel": { … }, "refund": { … }, "checkout": { … } } }
Request
Endpoint responsible for canceling a payment on the request of a merchant. The caller has to be one of the participants of the payment. A payment can be cancelled only if has the status in PENDING or IDENTIFIED. When a payment is cancelled the status will be set to CANCELLED.
The token neccessary to call this endpoint as a merchant has to have:
subjectType
:INTEGRATOR
orMERCHANT
authority
:MERCHANT_PAYMENT
resourceType
:PAYMENTPROFILE
- Mock server
https://docs.payconiq.be/_mock/apis/merchant-payment.openapi/v3/payments/{id}
- PREPROD merchant API
https://merchant.api.preprod.bancontact.net/v3/payments/{id}
- PROD merchant API
https://merchant.api.bancontact.net/v3/payments/{id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X DELETE \
'https://docs.payconiq.be/_mock/apis/merchant-payment.openapi/v3/payments/{id}' \
-H 'Authorization: YOUR_API_KEY_HERE'
Request
Endpoint responsible for searching payments by PaymentWebQuery model and returning the latest n(number set on the 'limit' parameter) payments, starting from the 'offset' payment(set in 'offset' parameter). By default the latest 10 payments (sorted by creation date descending) are returned per request
Merchant payment reference, used to reference Bancontact Payconiq Company payment in merchant system. The characters used must comply with the SEPA Requirements for an Extended Character Set (UNICODE Subset) - Best Practices | European Payments Council.
- Mock server
https://docs.payconiq.be/_mock/apis/merchant-payment.openapi/v3/payments/search
- PREPROD merchant API
https://merchant.api.preprod.bancontact.net/v3/payments/search
- PROD merchant API
https://merchant.api.bancontact.net/v3/payments/search
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
'https://docs.payconiq.be/_mock/apis/merchant-payment.openapi/v3/payments/search?page=0&size=10' \
-H 'Authorization: YOUR_API_KEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"from": "2019-08-24T14:15:22Z",
"to": "2019-08-24T14:15:22Z",
"paymentStatuses": [
"PENDING"
],
"reference": "19848995"
}'
{ "size": 0, "totalPages": 0, "totalElements": 0, "number": 0, "details": [ { … } ] }
Request
This API is intended for merchants initiating payments for specific profiles. Onboarded merchants should have api keys for each profile, the api key will carry the profileId information required to find the correct creditor in the merchant-service
The token/api-key necessary to call this endpoint must contain:
subjectType
: "INTEGRATOR:{CCV_ID}
" or "MERCHANT:{ID}
"resource
: "PAYMENTPROFILE:{profileId}
",authority
:MERCHANT_PAYMENT
Merchant payment reference, used to reference the Bancontact Payconiq Company payment in the merchant's system. The characters used must comply with the SEPA Requirements for an Extended Character Set (UNICODE Subset) - Best Practices | European Payments Council.
Field used to reference a bulk batch, so the merchant can inform how the payments should be bulked. If it's not set here it will default to the one configured in the profile.
Description of the payment that will be shown to the debtor, also used in the bank statement for reconciliation purposes. The characters used must comply with the SEPA Requirements for an Extended Character Set (UNICODE Subset) - Best Practices | European Payments Council.
Callback url to which merchants will be notified about the payment identification. If it's not set here it will default to the one configured in the profile
callbackUrl to which the merchant will be notified about the payment payout. If it's not set here it will default to the one set in the profile
Merchant return url to which the dynamic payment page will redirect after the payment is completed
- Mock server
https://docs.payconiq.be/_mock/apis/merchant-payment.openapi/v3/payments
- PREPROD merchant API
https://merchant.api.preprod.bancontact.net/v3/payments
- PROD merchant API
https://merchant.api.bancontact.net/v3/payments
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://docs.payconiq.be/_mock/apis/merchant-payment.openapi/v3/payments \
-H 'Authorization: YOUR_API_KEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"reference": "19848995",
"bulkId": "Bulk-1-200",
"amount": 1,
"currency": "EUR",
"description": "string",
"identifyCallbackUrl": "https://api.merchant.bancontact.net/identify",
"callbackUrl": "https://api.merchant.bancontact.net/payment",
"returnUrl": "https://api.merchant.bancontact.net/payment",
"voucherEligibility": [
{
"voucherSchemes": [
"BEL_MEAL_VOUCHER"
],
"amount": 1013
}
]
}'
Payment has been created successfully
Description of the payment that will be shown to the debtor, also used in the bank statement for reconciliation purposes. The characters used must comply with the SEPA Requirements for an Extended Character Set (UNICODE Subset) - Best Practices | European Payments Council. Only first 35 characters will be used for the remittance info
Merchant payment reference, used to reference the Bancontact Payconiq Company payment in the merchant's system. The characters used must comply with the SEPA Requirements for an Extended Character Set (UNICODE Subset) - Best Practices | European Payments Council.
Creditor account set to receive the payment
Creditor's Bank Account Iban to where the money will be sent to for this current payment
callbackUrl to which the merchant will be notified about the payment identification
Provides information to navigate to our REST interfaces dynamically, by including hypermedia links to them. Note that for some links inclusion depends on the status of the payment (e.g. cancel link will be available on PENDING and refund on SUCCEEDED)
{ "paymentId": "5f91483d-78a7-4914-bc6f=", "status": "PENDING", "createdAt": "2019-08-24T14:15:22Z", "expiresAt": "2019-08-24T14:15:22Z", "description": "string", "reference": "19848995", "amount": 1, "currency": "EUR", "creditor": { "profileId": "07e998f9-d932-4848-8b60-d5b5ae94b1b2", "merchantId": "dee718bb-3b6d-4312-9404-3d63d14529cc", "name": "John", "iban": "BE12 3456 7890 1234", "identifyCallbackUrl": "https://api.merchant.bancontact.net/identify", "callbackUrl": "https://api.merchant.bancontact.net/payment" }, "_links": { "self": { … }, "deeplink": { … }, "qrcode": { … }, "cancel": { … }, "refund": { … }, "checkout": { … } } }
Request
This API is intended for merchants initiating staticQR payments for specific POS(point of sale). If active payment already exists for provided combination of profileId and posId, then existing payment will be invalidated and new one created. Onboarded merchants should have api keys for each profile, the api key will carry the profileId information required to find the correct creditor in the merchant-service
The token/api-key necessary to call this endpoint must contain:
subjectType
: "INTEGRATOR:{CCV_ID}
" or "MERCHANT:{ID}
"resource
: "PAYMENTPROFILE:{profileId}
",authority
:MERCHANT_PAYMENT
Partner payment reference, used to reference the Bancontact Payconiq Company payment in the partner's system
Field used to reference a bulk batch, so the merchant can inform how the payments should be bulked. If it's not set here it will default to the one configured in the profile.
Description of the payment that will be shown to the debtor, also used in the bank statement for reconciliation purposes. The characters used must comply with the SEPA Requirements for an Extended Character Set (UNICODE Subset) - Best Practices | European Payments Council.
Name of the shop, where payment is created. This name will be shown to the user during payment, but will be truncated in the remittance info, if longer than 23 characters.
Callback url to which merchants will be notified about the payment identification. If it's not set here it will default to the one configured in the profile
Callback url to which the merchant will be notified about the payment payout/cancel. If it's not set here it will default to the one set in the profile
- Mock server
https://docs.payconiq.be/_mock/apis/merchant-payment.openapi/v3/payments/pos
- PREPROD merchant API
https://merchant.api.preprod.bancontact.net/v3/payments/pos
- PROD merchant API
https://merchant.api.bancontact.net/v3/payments/pos
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://docs.payconiq.be/_mock/apis/merchant-payment.openapi/v3/payments/pos \
-H 'Authorization: YOUR_API_KEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"reference": "19848995",
"bulkId": "Bulk-1-200",
"amount": 1,
"currency": "EUR",
"description": "string",
"posId": "POS00001",
"shopId": "3418e946-ef71-41ef-ad56-c41421c1e079",
"shopName": "Bun café",
"identifyCallbackUrl": "https://api.merchant.bancontact.net/identify",
"callbackUrl": "https://api.merchant.bancontact.net/payment",
"voucherEligibility": [
{
"voucherSchemes": [
"BEL_MEAL_VOUCHER"
],
"amount": 1013
}
]
}'
Payment successfully created
Description of the payment that will be shown to the debtor, also used in the bank statement for reconciliation purposes. The characters used must comply with the SEPA Requirements for an Extended Character Set (UNICODE Subset) - Best Practices | European Payments Council. Only first 35 characters will be used for the remittance info
Merchant payment reference, used to reference the Bancontact Payconiq Company payment in the merchant's system. The characters used must comply with the SEPA Requirements for an Extended Character Set (UNICODE Subset) - Best Practices | European Payments Council.
Creditor account set to receive the payment
Creditor's Bank Account Iban to where the money will be sent to for this current payment
callbackUrl to which the merchant will be notified about the payment identification
Provides information to navigate to our REST interfaces dynamically, by including hypermedia links to them. Note that for some links inclusion depends on the status of the payment (e.g. cancel link will be available on PENDING and refund on SUCCEEDED)
{ "paymentId": "5f91483d-78a7-4914-bc6f=", "status": "PENDING", "createdAt": "2019-08-24T14:15:22Z", "expiresAt": "2019-08-24T14:15:22Z", "description": "string", "reference": "19848995", "amount": 1, "currency": "EUR", "creditor": { "profileId": "07e998f9-d932-4848-8b60-d5b5ae94b1b2", "merchantId": "dee718bb-3b6d-4312-9404-3d63d14529cc", "name": "John", "iban": "BE12 3456 7890 1234", "identifyCallbackUrl": "https://api.merchant.bancontact.net/identify", "callbackUrl": "https://api.merchant.bancontact.net/payment" }, "_links": { "self": { … }, "deeplink": { … }, "qrcode": { … }, "cancel": { … }, "refund": { … }, "checkout": { … } } }