4 min read • Updated 7 months ago
Cybersource
Connect Foxy to Cybersource for secure payments.
- Countries
Japan, United Kingdom, United States
- Features
Setting Up Cybersource for FoxyCart
3On the left nav click Payment Configuration → Key Management.
4Generate a new key by clicking the “Generate Key” button.
Select “Transaction Processing” on the first screen, and “SOAP” on the second screen
5Copy the key that appears (and download it for safekeeping if desired as it won't be shown again).
6Login to your FoxyCart admin. Click the “payment” link under “STORE”. Set your payment method to Cybersource.com.
7Flip to the Live Server radio button. If it's disabled you'll need to “Start your FoxyCart subscription today!”.
8Enter your Merchant ID (which you use when you login to CyberSource) and the Transaction Key that you just copied.
9If your store needs to verify that the credit card is valid for certain amounts, you can set the (live or test) card verification mode: field. This feature's use is if you want to save a credit card for the customer and verify that it's valid, but not charge it at the time of entry. See the ? to the right of the field for help on options.
10Click the “Update Payment Gateway” button.
11Get back to your CyberSource account. Click “Account Management” → “SmartAuth Settings”. Set your checkboxes to look like this:
UK users skip the above step. CVN is not available and is covered by the Decision Manager settings.
Cybersource by default has already put in place basic fraud screening via the Decision Manager even in the basic set up package.
Don't worry. FoxyCart always sends the CVN unless the customer is using a saved card (or it's processing a subscription). This is very common; the first transaction between your store and your customer validates using the CVN, but subsequent transactions validate using other serives (like address verification).
12TEST. Your account may already be in test mode. Contact CyberSource support to make sure everything's ready to go.
13TEST MORE. Test with a real credit card and make sure everything (all the way up to the money actually getting deposited into your merchat account) works as expected.
NOTE: Using a test card on a live account will generate account configuration errors. We're noting that here because this is unusual behavior. (Typically the cards would just be rejected with a normal “declined”-style error message.)
Payment Tokenization
In order to have an ability to charge a customer again you need to create a customer profile at CyberSource.
You will get the subscription ID as paySubscriptionCreateReply__subscriptionID
in your data feed application. The customer profile will be created at CyberSource so you can access it using CyberSource Business Center.
Activation
Version 1.1
1Choose Cybersource.com (Payment Tokenization) as your payment gateway.
2Activate the option “Payment Token Required”.
Version 2.0+
1Choose Cybersource.com as your payment gateway.
2Activate the option “Payment Token Required”.
Overriding the Merchant Reference Number
As of Foxy v2.0, the “Merchant Reference Number” that Foxy passes to CyberSource (which is normally the Foxy transaction ID) can be overridden. This is considered advanced functionality, and is only relevant for very specific use cases (such as complex fulfillment processes where multiple authorizations and captures may need to be grouped by the Merchant Reference Number).
To override the default Foxy transaction ID, add an ''attribute'' via the API named fx_transaction_id_gateway_override
, to the cart
resource. The value of that attribute will be passed to CyberSource as the Merchant Reference Number (aka Merchant Reference Code).
For reference, here's the field in the CyberSource portal:
Important Notes and Caveats
Cybersource limits the number of characters we can send in the requests for payment, while Foxy's character limits on the checkout are more permissive. Therefore, when the customer fills out the checkout form, some of the information may be cut off or special characters removed before sending to Cybersource. Note though that the original data remains in Foxy. Our opinion is that it's more important to allow the customer to checkout (with data intact in Foxy) than to reject on an error because the customer put “ext” instead of “x” in their phone field, or included a disallowed character in their company name field.
If you wish to validate the checkout data entry instead of automatically replacing and/or truncating input values, you can do so using JavaScript validation.