Offline Bank Transfer
Intro
In PilotphaseOffline Bank Transfer is a European offline banking system, allowing your customers to transfer funds from their bank accounts to merchants via the SEPA Credit Transfer (SCT) scheme.
Bank Transfer is a highly accessible payment method for your customers across Europe, enabling you to receive your funds within 2 to 5 working days.
You invite your customers to open their online banking application. They authenticate and enter the bank transfer details, or scan a QR code with pre-filled data. Once we receive the funds into our collection account, we perform the reconciliation and confirm the transaction to you via a specific notification. You will be paid out the day after the funds are collected.
The integration is very easy, as it is integrated into the Hosted Checkout Page for Collect/Full Service merchants. Activation is done through your Collect/Full Service contract.
The customer's bank details (name and IBAN) are recorded once the transaction has been completed successfully. To comply with GDPR, you must inform your customers about this data collection if you store this information on your system.
Einstieg
To use Offline Bank Transfer in our live environment, sign a Full Service or a Collect contract with Worldline S.A./N.V. We will be happy to get you started.
Integration
We offer this payment methods for the following integration modes. Learn in our dedicated guides about their individual differences:
Find a high level overview in the "Zahlungsablauf" chapter.
Depending on the integration mode, differences apply:
Hosted Checkout Page
Add the following properties to a standard CreateHostedCheckout request:
{
"order": {
"amountOfMoney": {
"amount": 100,
"currencyCode": "EUR"
},
"references":{
"descriptor":"MerchantDescriptor"
},
"customer": {
"contactDetails": {
"emailAddress": "wile.e.coyote@acmelabs.com"
}
}
},
"redirectPaymentMethodSpecificInput": {
"paymentProductId":11,
"redirectionData":{
"returnUrl":"https://yourReturnUrl.com"
}
}
}
| Property | Remarks |
|---|---|
|
order.amountOfMoney |
amount: The gross amount you want to charge for this order. currencyCode: The ISO 4217 currency code for this amount. |
|
order.references.descriptor |
A dynamic descriptor appearing on your customers' bank statement. Strongly recommended. This will ensure that both you and your customers can associate the order with the bank transfer. Upon redirecting your customers to the Hosted Checkout Page, our platform's will display a separate payment reference together with the bank data. |
|
order.customer.contactDetails.emailAddress |
Your customer's e-mail address. For every status update, our platform will send a separate email about the order's status. Strongly recommended. |
|
redirectPaymentMethodSpecificInput |
paymentProductId: The numeric identifier of the payment method on our platform. Find this id in the "Überblick" chapter. It instructs our platform to send your customers directly to the payment form. If omitted, our platform sends your customers to the Hosted Checkout Page instead, allowing them to choose this or any other payment method that is active in your account. returnUrl: The URL we redirect your customers to after the payment has been finalised. |
Server-to-server
Add the following properties to a standard CreatePayment request:
{
"order": {
"amountOfMoney": {
"amount": 100,
"currencyCode": "EUR"
},
"references": {
"descriptor": "MerchantDescriptor"
}
},
"redirectPaymentMethodSpecificInput": {
"paymentProductId": 11,
"paymentProduct11SpecificInput": {
"skipEmailValidation" : true
}
}
}
| Property | Remarks |
|---|---|
|
order.amountOfMoney |
amount: The gross amount you want to charge for this order. currencyCode: The ISO 4217 currency code for this amount. |
|
order.references.descriptor |
A dynamic descriptor appearing on your customers' bank statement. Strongly recommended. This will ensure that both you and your customers can associate the order with the bank transfer. Upon sending a CreatePayment request, our platform's response will contain property merchantAction.showFormData.paymentProduct11. |
|
redirectPaymentMethodSpecificInput |
paymentProductId: The numeric identifier of the payment method on our platform. Find this id in the "Überblick" tab. skipEmailValidation: Instructs our platform not to send e-mails to your customers about the order's status. |
Ausführliche Informationen über dieses Objekt und seine Eigenschaften finden Sie in unserer HostedCheckoutAPI/ CreatePaymentAPI
Zahlungsablauf
- Your customers finalise an order in your shop and select Offline Bank Transfer.
- You send this CreateHostedCheckout request to our platform.
- You redirect your customers via the redirectUrl to a confirmation screen, displaying an e-mail input field.
- Your customers enter their e-mail address and click on “Proceed to pay”. We update the transaction to statusOutput.statusCode=46.
- Our platform redirects your customer to the payment screen, displaying your bank details and the order data as a QR code and in plain writing.
- Your customers make the bank transfer via their banking app, either by scanning the QR code or by manually entering the bank details and order data. They confirm the bank transfer by clicking on "Payment is done" on the payment screen.
- We redirect your customer to your returnUrl and update the transaction to statusOutput.statusCode=4.
- You request the intermediate transaction result (statusOutput.statusCode=4) from our platform via GetPaymentDetails/GetHostedCheckout or receive the result via webhooks.
- Your customers' bank transfers the funds to our colleting account via either a standard (within 1-2 days) or instant transfer (within a few minutes). We update the transaction to statusOutput.statusCode=9. If our collecting does not receive the funds within 5 calendar days, we will update the transaction to statusOutput.statusCode=2.
- You request the final transaction result from our platform via GetPaymentDetails/GetHostedCheckout or receive the result via webhooks.
- If the transaction was successful, you can deliver the goods / services.
Server-to-server
- Your customers finalise an order in your shop and select Offline Bank Transfer.
- You send this CreatePayment request to our platform.
- We update the transaction to statusOutput.statusCode=41. Our platform sends a response containing a merchantAction object. Depending on the how you want to define the payment flow, differences apply:
a) You display a payment form on your checkout page or send an e-mail to the customer, containing the bank details as provided in
merchantAction.showFormData.paymentProduct11, including order.references.descriptor combined with merchantAction.showFormData.paymentProduct11.paymentReference.b) You display an EPC QR Code on your checkout page using merchantAction.showFormData.paymentProduct11.qrCode.
- Your customers make the bank transfer via their banking app, either by scanning the QR code or by manually entering the bank details. They confirm the bank transfer using a call-to-action element located on your checkout page.
- You request the intermediate transaction result (statusOutput.statusCode=41) from our platform via GetPaymentDetails or receive the result via webhooks.
- Your customers' bank transfers the funds to our colleting account via either a standard (within 1-2 days) or instant transfer (within a few minutes). We update the transaction to statusOutput.statusCode=9. If our collecting does not receive the funds within 5 calendar days, we will update the transaction to statusOutput.statusCode=2.
- You request the final transaction result from our platform via GetPaymentDetails or receive the result via webhooks.
- If the transaction was successful, you can deliver the goods / services.
Testdaten
In unseren Testszenarios finden Sie Testdaten und detaillierte Instruktionen.
Stellen Sie sicher, den korrekten Endpunkt anzusteuern und zurück zum Live-Endpunkt zu wechseln, sobald Sie Ihre Tests abgeschlossen haben