1.0 INTRODUCTION
The purpose of this document is to present a detailed description of Saferpay. It will explain the purposeandfeatures of the system,the interfaces of the system,what the system will do, the constraints under which it must operate and how the system will react to external stimuli. This document is intended for both the stakeholders and the developers of the system and will be the baseline for the software development and so approval of this document is necessary.
Saferpay
Easy, flexible, secure - The comprehensive e-payment solution from Worldline for easier and more secure payment in your online shop.
Saferpay is a comprehensive e-payment solution for easy and secure payment in your online shop. Saferpay allows you to process all common national and international payment methods in your online shop– via just one single interface. With just a few clicks, the solution can be quickly and flexibly integrated into most shop systems.
ODOO modules
This Odoo module is compatible to work with Saferpay payment methods. This supports the following payment methods and workflows of Saferpay.
- VISA
- MASTERCARD
- MAESTRO
- AMERICAN EXPRESS
- BANCONTACT
- DINERS
- JCB
- BONUS CARD
- EPS
- KLARNA
- SOFORT BY KLARNA
- SEPA ELV
- MYONE
- MASTERPASS
- UNIONPAY
- PAYPAL
- TWINT
- PAYDIREKT
- IDEAL
- EPRZELEWY
- ALIPAY
- POSTFINANCE CARD
- POSTFINANCE eFINANCE
- APPLEPAY
Also support all features of Saferpay like payment page, iframe, Saferpay fields, alias insert, refund, cancel.
2.0 CONFIGURATIONS
Requirements
- ODOO working environment.
- License for Saferpay module.
- Before the installation, you must have a valid account on the Saferpay terminal.
- API credentials for Saferpay (Terminal ID, Customer ID, API Username and API Password) for Live and Test environment.
- A Valid Acceptance Agreement for payment Methods and credit cards.
General Configurations in Backend
Here we can set the Saferpay configurations data, go to Invoicing → Configuration → Saferpay Acquirer Configuration.
- Production Url: - We can set the production url.
- Test Url: - We can set the Test url of Saferpay, this is used to switch the Test/production environment.
- Customer ID: - Set the Customer Id of the Saferpay account.
- Terminal ID: - Set the Terminal Id of the Saferpay account
We can get the payment means and terminals from the menu Settings → Payment Means / Terminals.
Figure1 -General Configuration
- API UserName:-Set the API username
- API Password: - Set the API Password, we can create new API login from Saferpay backend, Settings → JSON API basic authentication → Create new JSON API login.
Figure 2 – Retrieving JSON API Keys
- API Key:-Set the API key, that is used for SaferpayFields.We can create new API Tokens in the Saferpay backend, from menu Settings → Saferpay Fields Access Tokens.
Figure 3 – Retrieving Saferpay field access token
- Liability Shift Behaviour: - If the liability shifts (liability shift is used to check this transaction is done by any fraud user) of the card get fail then the workflow is proceeding with this setting, there are two liability shift behaviors, they are
- Hold
- Cancel
- Need Extra Security: - Recommended for high risk businesses (Jewellery, Electronics, etc.) to stick to the highest level of security.
- Recurring SCA Challenge for PSD2 Compliance: - Set only if your shop contains a PSD2 certificate.
- Send Status Email: - used for sending status mail to the customer.
Figure 4 – Configuration List View
Figure 5 – Configuration Form View
- Smart buttons
- Acquires: - List of acquires (Payment methods) under this configuration.
- Logging: - List of all logs regarding the API call.
- Icon Configurations
- We can configure the payment icons for Saferpay from the menu Invoicing → Configuration → Payment Icons, as shown in the figure.
Figure 6 – Payment Icons list view
Figure 7 – Payment Icon form View
Here we can set the allowed currency and code that are used for Saferpay transaction.
- Saferpay Code:- Code that is used for Saferpay communication. To identify the payment method used for the transaction.
- Allowed Currencies: - Used to set up the predefined currencies to that payment method.
Acquirer Configurations in Backend
- We can set the acquirers/payment methods for Saferpay from the menu Invoicing → Configuration → Payment Acquirers, as shown in the figure.
Figure 8 – Payment Acquirer Kanban View
Figure 9 - Payment Acquirers form view
Here we can set the Odoo default configurations for acquirers
- Payment Journal: - Used to set up the Journal used for this acquirer.
- Capture Amount Manually: - If selected then the manual capture option is get activated for that acquirer.
- Allow Saving Payment Methods: - An option for the customer for saving the card details.
Figure 10- Save Card feature enabled
- Supported Payment Icons: -Used to configure the Supported payment icons, from payment Icons we get the Allowed Currencies and Code for Payment Method.
Figure 12- Saferpay Configuration for Payment acquirers
Configurations only for Saferpay acquirers
- Need Order Limit? - If checked we can set the minimum and maximum order limits.
- Send Customer Address: - Used to decide to send the customer delivery and billing address to Saferpay back office
- Support Notify Url:-It is used to set this acquirer’s support Notify URL.
- Support Recurring Payments: - It is used to set this acquirer support recurring payment
- if so you need to set the other option too. RecurringPayment Method:- It is used to specify this acquirer SCD and the method is support recurring
- Customer Confirmation email: - It is used to set whether a customer confirmation email is needed.
- Allowed Currencies: - The Allowed Currencies are loaded from Payment Icons, the listing of payment methods on the payment page depends upon this currency. If the shop currency is not listed in this allowed Currencies, then it is not listed on the shop payment page.
- Enable Styling:-It is used to give styling to the payment page of the acquirer website (Saferpay payment page).
- Payment Interface: - It is used to shift the payment interface, there are 3 options,
- Payment page: - If enabled, then the checkout page will direct to the Saferpay Payment page.
- Transaction Interface: - If enabled, then the checkout page will load the transaction interface (iframe).
- Saferpay Fields: - If Checked then it is shifted to Saferpay Fields workflow. The workflow is the same as an iframe,the data is captured by a fully PCI-certified system.
- Register Payment Type: - This is used to define the type of payment method/acquirer, it is more important for saving cards. Which are,
- CARD
- BANK_ACCOUNT
- POSTFINANCE
- TWINT
- Support Refunds? - It is used to specify whether this acquirer support refund.
- Smart buttons
- Saferpay Acquirer Logging: - List of all logs regarding the API call used for this acquirer.
- Business License: - This is used for license switching, e-Commerce, and Business license.
3.0 PAYMENT INTERFACE
- Go to menu Invoicing → Configuration → Payment Acquirers, choose the acquirer, for example, American Express is the acquirer than the configuration of the payment flow as shown below figure.
Figure 13- Configuration for Payment page
4.0 TRANSACTION INTERFACE
- Go to menu Invoicing → Configuration → Payment Acquirers, choose the acquirer, for example, American Express is the acquirer than the configuration of the transaction flow as shown below figure.
- Need to switch the acquirer license to a Business license to activate this flow.
Figure 14- Configuration for Transaction Interface
5.0 SAFERPAYFIELDS
- Go to menu Invoicing → Configuration → Payment Acquirers, choose the acquirer, for example, credit/debit is the acquirer then the configuration of the Saferpayfields flow as shown below figure.
- In the Configuration page payment flow set to “Redirection to the acquirer website”
- Payment Interface is set to “SaferpayFields”, and need to switch the acquirer license to Business license for activate this flow.
- Need to set one Template for SaferpayFields from the field “Saferpay Field Template Type” as shown in the figure.
Figure 15 - Saferpay Field Configuration
6.0 SAVE CARD
- We can set the save card option from the acquirer form, as discussed in the above points.
- The save card option only works with Transaction Interface.
- The saved cards are listed under the menu Invoicing → Configuration → Saved Payment Data/Payment Token, as shown below figure
Figure 16 - Saved Card list view
Figure 17 - Saved Card Form view
- Payments - button provides the list of transactions done by the selected token.
7.0 MULTIPART CAPTURE & MANUAL CAPTURE & CANCEL TRANSACTION
- Go to the menu Invoicing → Configuration → Payment Acquirer, choose the acquirer, we can see an option for setting multipart capture (“Capture Amount Manually”) after enabling the Capture Amount Manually. As shown below.
Figure 18 – Manually Capture Configuration
Transaction Status
- If we create one transaction with this acquirer (with this configuration), then the transaction status is in the “Authorized/ Pending” state, as shown below figure.We can see the transaction from the menu Invoicing → Configuration → Payment Transactions
Figure 19 – Manual/Multipart Capture
- We can capture the amount once and partially. By using the Capture Transaction button, the full amount is captured, by using Multipart Capture we can capture the amount partially.
- By using the Void Transaction button, we can cancel the transaction.
8.0 REFUND
- For the refund option need to switch the acquirer in the Business license.
- The refund option has two options
- Referenced Refund: - In this case, the original transaction reference is present in the Saferpay back-office.
- Referenced refund can be done as refunding of Multipart (Manual) captured transactions and Normal captured transactions.
Figure 22 – Multipart capture- Refund
Figure 2 – Normal refund
-
- Refund Direct: - In this case, the original transaction does not present in the Saferpay back-office, for example: - cash on delivery cases. In this case, there is two option to refund the amount to the customer.
- Refund by merchant: - This option is possible if any of the cards are saved against the customer. If no cards, then the refund will continue with the other options, i.e., the Refund by Customer option, which will automatically compute on the credit card payment page.
- Refund by Customer: - If no card is saved against this customer, then the customer has to enter the card details.
- Refund Direct: - In this case, the original transaction does not present in the Saferpay back-office, for example: - cash on delivery cases. In this case, there is two option to refund the amount to the customer.
Figure 20 – Direct Refund
- Some of the payment methods don’t support direct, so need to refer to Saferpay documentation before configuration.
9.0 RECURRING TRANSACTION
- Go to the menu Invoicing → Configuration → Payment Acquirer, choose the acquirer, and set the field Support Recurring Payments and the Recurring Payment Method field.
Figure 21 – Recurring Transaction Payment Acquirer Config
- Check Saferpay documentation before set up, because some of the payment methods don’t support recurring payments.
- Go to the Subscriptions → Configuration → Subscription Templates, to set up the template for a subscription.
Figure 22 – Subscription Template.
- After selecting a subscription product from the shop, and continuing it with the Saferpay payment method, then one recurring transaction is created on the Saferpay back-office.
- Next payments are created based on the next execution date and cron job actions, the payment processing is depending on the configuration set up in the Subscription Template.
Figure 23 – Subscriptions.