Configuring synchronized payment reversals

You can configure the payments subsystem to support payment captures that are associated with shipments. This helps avoid payment problems with orders for which there are multiple shipments and multiple payment transactions.

About this task

To synchronize the payment data with a payment gateway that automatically releases payment authorizations after a single capture:

Procedure

  1. Configure the SynchronizedLocalPaymentReversal attribute in the PluginDeployment.xml file.
    This file is in the workspace_dir\WC\xml\config\payments\ppc\plugins\Payment_Plug-in_Name directory. Refer to the following code sample, in which the new attribute is highlighted in bold:
    <PluginInformation
          jndi="ejb/com/ibm/commerce/payments/plugin/simpleoffline/beans/SimpleOfflineHome"
          home="com.ibm.commerce.payments.plugin.simpleoffline.beans.SimpleOfflineHome" 
          name="SimpleOffline"
          version="1.0.0" 
          vendor="IBM"
          independentCredit="true"
          virtualTerminal="none"
          SynchronizedLocalPaymentReversal="true">
  2. Configure the CorePaymentActions.xml file.
    This file is in the workspace_dir\WC\xml\config\payments\edp\groups\Your_Payment_Group\Your_Payment_Configuration directory.
    • To configure HCL Commerce to release the payment authorization for the remaining shipments, and to submit a new authorization and capture when the order is shipped, refer to the following code sample, in which the changed code is highlighted in bold:
      <TargetDeposited> 
      .
      .
      .   
         <CurrentDNE>
            <Action name="Approve" amount="requested" target="additional"/>
            <Action name="Deposit" amount="requested" target="existing"/>
         </CurrentDNE>
         <CurrentApproved>
         .
         .
         .
            <AmountGreaterThanRequested>
               <Action name="ReverseApproval" amount="delta" target="existing"/>
               <Action name="Deposit" amount="requested" target="existing"/>
               
            </AmountGreaterThanRequested>
         .
         .
         .
         </CurrentApproved>
         .
         .
         .
      </TargetDeposited>
    • To configure HCL Commerce to release the payment authorization for the remaining shipments and to immediately submit a new payment authorization, and process the payment capture when the order is shipped, refer to the following code sample, in which the changed code is highlighted in bold:
      <TargetDeposited> 
      .
      .
      .   
         <CurrentDNE>
            <Action name="Approve" amount="requested" target="additional"/>
            <Action name="Deposit" amount="requested" target="existing"/>
         </CurrentDNE>
         <CurrentApproved>
         .
         .
         .
            <AmountGreaterThanRequested>
               <Action name="ReverseApproval" amount="delta" target="existing"/>
               <Action name="Deposit" amount="requested" target="existing"/>
               <Action name="Approve" amount="delta" target="new"/>
            </AmountGreaterThanRequested>
         .
         .
         .
         </CurrentApproved>
         .
         .
         .
      </TargetDeposited>