Webshop Integration with External Payments (Online Payment Provider and some Credit Card transactions)
For some webshop transactions, the webshop application might initiate payments. It connects the customer to an online payment provider (or a credit card provider), who confirms the payment. This article outlines, how this can be done.
The payment provider's payment advice is not received electronically.
In the webshop, a consumer or customer confirms his shopping cart, a payment is confirmed by an online payment provider and the transaction is completed.
A webservice call is sent to SAP Business ByDesign (see below).
It creates a sales order with payment method "external payment" and the payment reference provided by the payment provider.
It creates an incoming external payment.
A posting is being created.
The delivery is done and a customer invoice is being issued.
Automatically, the due item (invoice) at the customer account will be cleared.
The payment provider's payment advice is being received, giving the payment reference, transaction amounts and the total amount that will be received at the bank account.
Enter it as a house bank statement at the payment provider's house bank account (see below).
For the incoming payment (full amount of all transactions) at your house bank account, do a bank-to-bank-transfer.
Ideally, the payment provider's house bank account should be balanced.
- Create a communication arrangement for integration scenario E-Commerce Web Shop Integration. The shop should implement a client for web service Manage Sales Orders.
- Create a house bank and house bank account for the payment provider.
- Adjust scoping (please see next screenshot).
- In case you want to create the sales order first and confirm it with a second webservice call (first call create, second change with ReleaseCustomerRequest = true), activate the second option ("Would you like your employees..."). In case you do the first call and do not issue ReleseCustomerRequest = true, it will be created invisibly, but allows to check availability and price determination, ATP, ...
- In case you want to create the sales order in released status, do not activate the third option ("Would you like your employees...).
If activated, new sales orders will be created in preparation mode.
Please find below an example for a webservice call (screenshot below, source as attachment).
In this scenario important:
- DataOriginTypeCode = 4
- Evaluate when to set ReleaseCustomerRequest = true
- PaymentFormCode = 20 (i.e. External Payment)
- PaymentReferenceTypeCode = 5
- PaymentReferenceID = PaymentTransactionReferenceID = reference as provided by the payment provider.
- For credit cards, you might consider a slightly different scenario in case you receive an interface file to advice CC payments (Clearing House / Clearing House Statement).
- It is also possible to start this scenario with the customer invoice, in case delivery is also managed by the webshop.
- How to get ByDesign Code Lists via Web Service QueryCodeListIn
- Paymentway - Creditcard - same topic, but I decided to embed it with a scenario.