Scenario :

  • Creating an order with PaymentType= “CreditCard” with charges and taxes.
  • After creating the order, we call requestCollection Api to authorize the total ordered amount.
  • After Authorize the order, schedule and release the Order.
  • After that creating the Shipment for the Order and Confirm the Shipment.
  • Then we create a Shipment Invoice by calling the createShipmentInvoice Api.
  • Next, we call the requestCollection Api to process the settlement for the Order and it update the payment status to Invoiced.
  • Next, we call the executeCollection Api to “collect the request amount”.
  • Finally, we call requestCollection Api to update the payment status to Paid.

CreateOrder :

Output :

<Order DocumentType=”0001″ EnterpriseCode=”Matrix” OrderHeaderKey=”20230825130846254017″ OrderNo=”526″/>

Console :

  • Create an order with the PaymentType “CreditCard
  • The Payment Status is “AwaitAuthorization

Charge Transaction Table :

After creating the order the Authorization record is in “open” status and Create_Order  record is in “closed” Status entry is there in the YFS_Charge_Transaction  table.

RequestCollection :

<Order DocumentType=”0001″ EnterpriseCode=”Matrix” OrderHeaderKey=”20230825130846254017″ OrderNo=”526″/>

Console :

After the requestCollection Api call the payment status is moved to “Authorized”.

Table :

Both Authorization and Create_Order status are changed to “Checked”.

Upto confirm shipment, there is no changes in the table and payment status. It remains the same.

CreateShipmentInvoice:

<Shipment SellerOrganizationCode=”Matrix”  ShipmentKey=”20230825132238254348″ TaskQKey=”” ShipNode=”Matrix_WH01″ TransactionId=”CREATE_SHMNT_INVOICE.0001″/>

Creating the Shipment invoice for the order.

Console :

The invoice is created.

Table :

  • After creating the Shipment invoice, the SHIPMENT record will be opened in the

table.

Invoice Details :

  • Line Total = ExtendedPrice + Charges + Tax – Discount

As per this Order, GrandTotal = 190   

RequestCollection :

<Order DocumentType=”0001″ EnterpriseCode=”Matrix” OrderHeaderKey=”20230825130846254017″ OrderNo=”526″/>

Console :

The PaymentStatus  is changed to “Invoiced”.

Table :

The CHARGE record will be opened in the table to process the payment.

ExecuteCollection :

<Order DocumentType=”0001″ EnterpriseCode=”Matrix” OrderHeaderKey=”20230825130846254017″ OrderNo=”526″/>

Console :

In Console the Collected amount is updated to 190.

Table :

  • The CHARGE record will be changed to “CLOSED”
  • The amount 190 is credited.

RequestCollection :

<Order DocumentType=”0001″ EnterpriseCode=”Matrix” OrderHeaderKey=”20230825130846254017″ OrderNo=”526″/>

Console :

After requestCollection Api call the PaymentStatus is moved to “Paid”.

Table :

In table the CHARGE record status is moved to “Checked”.

Settlement is completed for this order.

#LetsTalkRetail #SpicaTech

2 comments on “CREDIT CARD PAYMENT PROCESSING

  1. This is really a good explanation.

    Can we have similiar explanation w.r.t Wallets.

    1. Thanks for your comments. We noted this topic. We will keep posting about this topic as well.

× Chat with Us