Bypassing the Payments subsystem in WebSphere Commerce
To bypass or disable the Payment subsystem for WebSphere Commerce, replace the Payment Rules task commands with void implementations.
Task info
When you replace the following Payment Rules task commands with void implementations, the Payment subsystem is bypassed for a store and Payment processing does not occur:
Payment Rule task command Void implementation com.ibm.commerce.edp.commands.PrimePaymentCmd com.ibm.commerce.edp.commands.PrimePaymentVoidCmdImpl com.ibm.commerce.edp.commands.ReservePaymentCmd com.ibm.commerce.edp.commands.ReservePaymentVoidCmdImpl com.ibm.commerce.edp.commands.FinalizePaymentCmd com.ibm.commerce.edp.commands.FinalizePaymentVoidCmdImpl com.ibm.commerce.edp.commands.TriggerPaymentActionsCmd com.ibm.commerce.edp.commands.TriggerPaymentActionsVoidCmdImpl com.ibm.commerce.edp.commands.CancelOrderCmd com.ibm.commerce.edp.commands.CancelOrderVoidCmdImpl com.ibm.commerce.edp.commands.StoreAndValidatePaymentCmd com.ibm.commerce.edp.commands.StoreAndValidatePaymentVoidCmdImpl com.ibm.commerce.edp.commands.PIAddCmd com.ibm.commerce.edp.commands.PIAddVoidCmdImpl com.ibm.commerce.edp.commands.QueryPIsCmd com.ibm.commerce.edp.commands.QueryPIsVoidCmdImpl com.ibm.commerce.edp.commands.EDPPaymentInstructionsBeanCmd com.ibm.commerce.edp.commands.EDPPaymentInstructionsVoidBeanCmdImpl
To disable Payments for the whole site, replace STOREENT_ID with STOREENT_ID=0 when you perform the following procedure.
Procedure
- Update the CMDREG table to disable the default implementation. Insert the following SQL to replace the task commands with void implementations:
INSERT INTO CMDREG(STOREENT_ID, INTERFACENAME, CLASSNAME, TARGET) VALUES (10001,'com.ibm.commerce.edp.commands.PrimePaymentCmd','com.ibm.commerce.edp.commands.PrimePaymentVoidCmdImpl','Local'); INSERT INTO CMDREG(STOREENT_ID, INTERFACENAME, CLASSNAME, TARGET) VALUES (10001,'com.ibm.commerce.edp.commands.ReservePaymentCmd','com.ibm.commerce.edp.commands.ReservePaymentVoidCmdImpl','Local'); INSERT INTO CMDREG(STOREENT_ID, INTERFACENAME, CLASSNAME, TARGET) VALUES (10001,'com.ibm.commerce.edp.commands.FinalizePaymentCmd','com.ibm.commerce.edp.commands.FinalizePaymentVoidCmdImpl','Local'); INSERT INTO CMDREG(STOREENT_ID, INTERFACENAME, CLASSNAME, TARGET) VALUES (10001,'com.ibm.commerce.edp.commands.TriggerPaymentActionsCmd','com.ibm.commerce.edp.commands.TriggerPaymentActionsVoidCmdImpl','Local'); INSERT INTO CMDREG(STOREENT_ID, INTERFACENAME, CLASSNAME, TARGET) VALUES (10001,'com.ibm.commerce.edp.commands.CancelOrderCmd','com.ibm.commerce.edp.commands.CancelOrderVoidCmdImpl','Local'); INSERT INTO CMDREG(STOREENT_ID, INTERFACENAME, CLASSNAME, TARGET) VALUES (10001,'com.ibm.commerce.edp.commands.StoreAndValidatePaymentCmd','com.ibm.commerce.edp.commands.StoreAndValidatePaymentVoidCmdImpl','Local'); INSERT INTO CMDREG(STOREENT_ID, INTERFACENAME, CLASSNAME, TARGET) VALUES (10001,'com.ibm.commerce.edp.commands.PIAddCmd','com.ibm.commerce.edp.commands.PIAddVoidCmdImpl','Local'); INSERT INTO CMDREG(STOREENT_ID, INTERFACENAME, CLASSNAME, TARGET) VALUES (yourstoreid,'com.ibm.commerce.edp.commands.QueryPIsCmd','com.ibm.commerce.edp.commands.QueryPIsVoidCmdImpl','Local'); INSERT INTO CMDREG(STOREENT_ID, INTERFACENAME, CLASSNAME, TARGET) VALUES (yourstoreid,'com.ibm.commerce.edp.commands.EDPPaymentInstructionsBeanCmd','com.ibm.commerce.edp.commands.EDPPaymentInstructionsVoidBeanCmdImpl','Local');
Note: If the interfaces for a particular STOREENT_ID are defined, 'UPDATE' the tables with the related void implementation changes.
- For these changes to be recognized, restart the Commerce server.