Last year I worked on an eCommerce project for a client selling a high risk product. I didn’t realize at the time that most merchant processors were unwilling to work with him. In December he finally found a merchant willing to work with him: Platinum Choice Bancard Payment Gateway.
While this payment gateway is technically compatible with WooCommerce, it is not compatible with it out of the box. It took some tweaking.
Step 1. Setup Gateway Account
The first step is to setup your gateway account with Platinum Choice Bancard. They will e-mail the client a link to setup their username and password that expires with 24 hours. It’s important that the client themselves do this setup process.
Step 2. Tweak Authorize.net Gateway
Platinum Choice Bancard provides pretty vague integration directions on their website which suggest that you can emulate the Authorize.net AIM method to process payment. Unfortuantely it doesn’t tell you where to get such a plugin.
After trying basically every free Authorize.net + Woocommerce plugin, I finally found one that worked. It is called Authorize.Net Payment Gateway for WooCommerce by XAdapter. Out of the box it only works with the official Authorize.net gateway, but by tweaking the plugin file, you can make it work with the PCB Gateway.
Specifically, edit
/wp-content/plugins/payment-gateway-authorizenet-woocommerce/includes/class-eh-authorize-net-aim-card.php
On lines 65 and 69, change the gateway URLs to read:
if ($this->eh_authorize_card_mode === 'live') { $this->uri = 'https://pcb.transactiongateway.com/gateway/transact.dll'; } else { $this->uri = 'https://pcb.transactiongateway.com/gateway/transact.dll'; }
Step 3. Enter Authorize.net Variables in WordPress
Now it is time to go to the Settings > Checkout > Authorize.net
section of Woocommerce to setup the appropriate variables to make the gateway work.
The Login ID is your username that you use to log into PCB and the Transaction Key is your password that you use to log into PCB. Make sure to set the Transaction Mode to Live and the Transaction Type to Authorize & Capture.
Setup 4. Prevent Automatic Updates
Because you made changes to the source code of a plugin in a way other than was as intended by the developer, you will need to setup the plugin against automatic updates. If the plugin updates, it will wipe out your customization.
For this, I recommend using the free plugin Easy Updates Manager.