Introduction
Payment processing has three main steps. Authorization, Invoicing and Settlement.
- Authorization is the process of authenticating the amount that a particular order has. This process will connect with the payment system, and it will get a response. Based on the response, the payment status of the order will be moved to AUTHORIZED.
- Invoicing is the process of initiating the settlement for the order, and it can be done in two stages, that is Order level Invoicing and Shipment level Invoicing.
- In the settlement process, based on the payment method of the order, it will connect to the payment system and collect the total amount of the order from the customer.
Payment Rule Configuration
Step 1: Go to SBC – Move to your organization – System Setup – Payment – Payment Rule – Search
Step 2 : Configuring the created payment rule at Enterprise Level
Payment Type Configuration
Step 1: Go to SBC – Move to your organization – System Setup – Payment – Payment Type – Search
User Exit Implementation
YFSCollectionOthersUE is implemented to perform the authorization, re-authorization, and charge activities of the other payment types. This user exit will be invoked in the Execute Collection API call.
Wallet – Payment Flow
- Sales Order Flow – Wallet
- Extra Quantity Added
Case 1: Sales Order Flow – Wallet
Create Order
Created Order with Wallet as Payment Type
Console
- Order Status is ‘Created’ and Payment Status – ‘Authorized‘
Charge Transaction Table
After creating the order, create order record is in ‘Checked’ Status and Authorization is in ‘Checked’ Status.
Create Shipment Invoice
Console
- Invoice is created for shipment of the order.
- Payment Status is still in ‘Authorized’ Status
Charge Transaction Table
After Invoicing, Shipment entry is created with ‘Open’ Status.
Request Collection
Payment status is moved to ‘Invoiced’ Status after called the Request Collection
Charge Transaction Table
Shipment record is moved to ‘Checked’ status and Charge record is created with ‘Open’ Status
Execute Collection
- Invoiced amount has been collected and Collected Amount is updated in the Console.
- Payment status is in ‘Invoiced‘.
Charge Transaction Table
- Total Amount has been Collected after called the execute collection API.
- Charge record is moved to ‘Closed’ status.
Request Collection
Payment Status is moved ‘Paid’ after called the request collection.
Charge Transaction Table
Charge record is moved to ‘Checked’ Status.
Case 2: Extra Quantity added
Some of the additional quantity is added to the existing line of the sales orders.
Created
Created with Wallet Payment and Payment Status is in ‘Authorized’ status.
Charge Transaction Table
After creating the order, create order record is in ‘Checked’ Status and Authorization is in ‘Checked’ Status.
Add Additional Quantity
- By using Change Order API, Additionally two quantity is added after creating the order.
- Payment Status is moved to ‘Await Authorization‘.
Charge Transaction Table
New Authorization record will be ‘Closed’ status and Addition record is in ‘Open’ status after added the extra quantity.
Request Collection
Payment Status is moved to ‘Authorized’ status after called the request collection.
Charge Transaction Table
- Authorization record will be ‘Checked‘ status
- Addition record is in ‘Checked’ status after added the extra quantity.
Thank you for taking time to go through this one !
#LetsTalkRetail #SpicaTech
Thanks for sharing this on request. Rally Helpful and learnt a lot.