Are you looking for test card numbers?

Would you like to contact support?

Plugin icon

Salesforce B2B Commerce Lightning

Use our app for Salesforce B2B Commerce Lightning to accept payments.

The Adyen Payments app - B2B Commerce Lightning is a payment solution for your ecommerce site. The integration supports authorisations for credit cards to enable your B2B storefront.

Install the app

Install these packages in the same order:

  1. Apex API Lib Package Version 2.0.0.0
  2. B2B L Package 1.1.0.0.

This package only supports Salesforce's Main Checkout Flow

Step 1: Create a named credential

The Named Credential has the authentication details used between the Salesforce B2B Commerce and Adyen.

  1. Create a new Merchant Account/Use Existing Merchant account in Adyen Customer Area and make sure that the Web Service user has API PCI role.
  2. From Setup, go to Security > Named Credentials.
  3. Select Named Credential 'Adyen' and update these properties:
Field Value
Username The name of your Adyen API Credential, for example ws@Company. [YourAdyenCompanyAccount].
Password The basic authentication password for your Adyen API credential.

Step 2: Configure Adyen Adapter Custom metadata

Update AdyenDefault metadata record:

  1. Go to Custom Code > Custom Metadata Types from Setup.
  2. On Adyen Adapter type, select Manage Records.
  3. Click on AdyenDefault and enter the following values:
Field Required Value
Merchant Account -white_check_mark- The name of your Adyen Merchant account. Case-sensitive.
System Integrator Name The name of your System Integrator.
Single Currency Code The currency ISO Code the Org uses, for example USD. Leave the Single Currency Code blank if Org is using multi-currency. The adapter then looks for xxxlsoCode fields which are placed when multi-currency is enabled.
  1. Select Save.
  2. From Setup go to Custom Code > Custom Metadata Types.
  3. On Adyen Adapter type, select Manage Records.
  4. Select New and add a new record for your Adyen Merchant Account:
    • Label: A unique label.
    • Adyen Adapter Name: The name of your Adyen Merchant account. Case-sensitive.
    • Endpoint Path: /checkout
    • Endpoint API Version: /v68
    • Endpoint Method: POST
    • Authorize Endpoint: /payments
    • Capture Endpoint: /payments/{paymentPspReference}/captures
    • Refund Endpoint: /payments/{paymentPspReference}/refunds
    • Merchant Account: The name of your Adyen merchant account. Case-sensitive.
  5. Select Save to complete.

Step 3: Set up the Payment Gateway

To set up the Payment Gateway:

  1. Create a Payment Gateway Provider record.
  2. Create a Payment Gateway record.

Create the Payment Gateway Provider record

First, get the Apex Adapter ID:

  1. From Setup go to Custom Code > Apex Classes
  2. Choose AdyenAsyncAdapter class.
  3. Make a note of the final part of the URL in your browser, for example 01pB0000004IvhM. This is the Apex Adapter ID.

Then, use Workbench to add the Payment Gateway Provider record:

  1. Log in to Workbench.

  2. Choose API v68.

  3. Select Utilities > REST Explorer.

  4. Make a POST /services/data/v68.0/tooling/sobjects/PaymentGatewayProvider request with the following body:

    {
    "ApexAdapterId": "YOUR_APEX_ADAPTER_ID",
    "DeveloperName": "Adyen",
    "MasterLabel": "SalesforceOrderManagement-Adyen",
    "IdempotencySupported": "Yes"
    }
  5. You get a confirmation if the Payment Gateway Provider record was created successfully.

Create a Payment Gateway record

  1. In the Commerce app, select App Switcher and type Payment Gateways.
  2. Select New, and enter the following values:
Field Value
Payment Gateway Name Adyen
Payment Gateway Provider Choose CommercePaymentsAdyenAsyncAdapter.
Merchant Credential Adyen. This is the Named Credential you created.
Status Active
External Reference Leave blank.
  1. Select Save.

Step 4: Set up webhook notifications

Adyen uses webhooks to send JSON notifications asynchronously to your Salesforce payment gateway adapter. To receive these notifications, you need to:

  1. Expose a Salesforce site endpoint.
  2. Configure webhook notifications in the Adyen Customer Area.
  3. Test your webhook configuration.

Expose a Salesforce site endpoint

This site will accept Adyen's webhook notifications.

  1. From Setup, go to User Interface > Sites and Domains - Sites, and then select Site.
  2. Select New.
  3. Enter a label, for example Adyen. Select Active.
  4. Enter a unique value for the default web address, for example http://dev-myorganization--sandbox.cs17.force.com/adyen
  5. Select Guest Access to the Payments API, and then save your changes.
  6. Select an Active Site Home Page, for example, UnderConstruction, and Save your changes.
  7. Activate the site.
  8. Go to Public Access Settings > Custom Metadata Types. Select Edit and enable the Adyen Adapter metadata type.

To construct the webhook endpoint URL you need:

Construct your webhook endpoint URL
SALESFORCE_SITE_URL/services/data/v49.0/commerce/payments/notify?provider=YOUR_PAYMENT_GATEWAY_PROVIDER_ID
# For example:
# http:// dev-clientname.cs17.force.com/adyen/services/data/v49.0/commerce/payments/notify?provider=0cJ4W000000XWnuUAG

Configure notifications in the Adyen Customer Area

  1. Log in to your Customer Area. If you want to configure webhooks for a merchant account, switch to that merchant account.
  2. Select Developers > Webhooks.
  3. Select + Webhook.
  4. Under Recommended webhooks > Standard notification select Add.
  5. Select the toggle to make the standard notification Enabled.
  6. Select the edit icon for Server configuration.
  7. Enter:

Select Apply.

  1. Under General > Events, select the edit icon . Remove all events except CAPTURE and REFUND. Select Apply. Contact our Support Team to enable this if you don't have access.
  2. Select Save changes.

Test your webhook configuration

  1. In your Customer Area, go to Developers > Webhooks.
  2. Next to Standard notification, select the edit webhook icon .
  3. Under Test Notifications, toggle which notifications you want to test.
  4. Select Test Configuration.

Seeing [accepted] in all of the test results confirms your webhook configuration is correct.

Step 5: Custom metadata access to Customer Community User Profile

  1. From Setup, go to Profiles > Customer Community User Profile - Sites.
  2. Select Enabled Custom metadata Type Access, click Edit.
  3. Choose AdyenAsyncAdapter and move it from Available Custom metadata types to Enabled Custom metadata types.
  4. Click Save.

Step 6: Go to Store Administration

Go to Card Payment Gateway settings and choose AdyenAsyncAdapter.