Setting Up Cybersource for FoxyCart

  1. Set up your CyberSource account - http://www.cybersource.com/register/
  2. Login to 'Test Business Center' https://ebctest.cybersource.com/
  3. On the left nav click Payment Configuration → Key Management.
  4. Generate a new key by clicking the “Generate Key” button.
    1. Select “Transaction Processing” on the first screen, and “SOAP” on the second screen
  5. Copy the key that appears (and download it for safekeeping if desired as it won't be shown again).
  6. Login to your FoxyCart admin. Click the “payment” link under “STORE”. Set your payment method to Cybersource.com.
  7. Flip to the Live Server radio button. If it's disabled you'll need to “Start your FoxyCart subscription today!”.
  8. Enter your Merchant ID (which you use when you login to CyberSource) and the Transaction Key that you just copied.
  9. If 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.
  10. Click the “Update Payment Gateway” button.
  11. Get back to your CyberSource account. Click “Account Management” → “SmartAuth Settings”. Set your checkboxes to look like this:
    CyberSource CVN settings
    • UK users skip the above step. CVN is not available and is covered by the Decision Manager settings.
      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).
  12. TEST. Your account may already be in test mode. Contact CyberSource support to make sure everything's ready to go.
  13. TEST 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.
    1. 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.


Version 1.1

  1. Choose Cybersource.com (Payment Tokenization) as your payment gateway.
  2. Activate the option “Payment Token Required”.

Version 2.0+

  1. Choose Cybersource.com as your payment gateway.
  2. Activate 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: An image showing the CyberSource admin with the Merchant Reference Number column header circled.


Obtaining a Test Account

Test Card Numbers

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.

User Notes and Experiences

If you have tips, experience, or helpful notes related to this gateway that would benefit others, please add them below, including your name and the date. We at FoxyCart reserve the right to edit or remove comments that don't add value to this page.

Site Tools