Integrating Cybersource

1. Connect to your dashboard https://{sub} where {sub} is your Cybersource account provided by your Cybersource contact with your credentials

2. Go to Payment Configuration > Key Management


Create a REST - Shared secret key, click "+ Generate key", Choose REST - Shared Secret, Click "Generate key" button and note the 2 keys shown:


API SecretKey

3. Go to Payment Configuration >  Secure Acceptance Settings


Create a Profile, click "+ New Profile"

Note your Secure Acceptance ProfileID

- General settings:

- Interation methods: Hosted Checkout

- Added Value Services: Payment Tokenization Enabled

- Payment settings:

- Add card types, and for each make sure you select the currency of your business

- Security:

- Click "Create key", note keys Secure Acceptance AccessKey and Secure Acceptance SecretKey

- Customer response:

- Transaction Response Page: "Hosted By You" with URL https://{sg-code} where {sg-code} is your Storeganise account

- Custom Redirect After Checkout: set URL https://{sg-code} (this is the default redirect URL and also the cancel URL)

Make sure to click "Promote profile"

4. Once you have the following information, please contact us and we will advise you on the next steps to integrate your Storeganise instance with your Cybersource merchant

Environment (Test, Production or ProductionIndia)
Currency (currency code e.g. EUR)
Secure Acceptance ProfileID
Secure Acceptance AccessKey
Secure Acceptance SecretKey
API SecretKey

Using Cybersource in a custom configuration

- GET /v1/billing/cybersource/sources - list available payment methods

- POST /v1/billing/cybersource/session - returns { action: String, data: Object } to be used in a form for starting the checkout flow, as shown below:

const session = await fetch('' + encodeURIComponent(location.href), {
  method: 'POST',
  // credentials: 'include', // if using cookies
  headers: { authorization: `Bearer ${accessToken}` },
}).then(r => r.json());
const form = document.createElement('form');
form.action = session.action;
form.method = 'POST';
  ...Object.entries([name, value]) => {
    const input = document.createElement('input');
    return Object.assign(input, { type: 'hidden', name, value });

Note: You must first have created a user account before attaching Cybersource cards using the above endpoints

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.

Still need help? Contact Us Contact Us