Skip to content

Adyen/adyen-salesforce-commerce-cloud

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Salesforce Commerce Cloud Adyen Cartridge

Adyen provides a LINK cartridge to integrate with Salesforce Commerce Cloud (SFCC). This cartridge enables an SFCC storefront to use the Adyen payment service.

Compatibility with SFCC architectures

Integration

This cartridge allows you to integrate with Adyen without the need for any development work from your end.

  • Online payments are processed on the back-end using the Checkout API, and on the client side, Adyen’s Web Components are used to render payment methods.
  • Point of Sale (POS) payments are processed using a cloud-based Terminal API.

This cartridge contains 2 folders, /src and /cartridges. The /src folder is the origin, while the /cartridges folder contains the transpiled code.

Transpilation

Some files in the /src directory contain modern JavaScript (ES6, MobX) that Salesforce Commerce Cloud does not natively support. To make the code compatible, we downgrade the ES6 to ES5 by transpiling, compiling, and uploading the auto-generated code to the /cartridges directory, see more in our Docs.

Customization Best Practices

After v 23.2.1

  • Best practice! Modularizing customizations is the recommended approach, as outlined by Salesforce.
  • To customize Adyen payments, create a new cartridge in your /cartridges directory or leverage int_custom_cartridge, which is already set up in this repository.
  • Customizations added to a separate cartridge will not be transpiled and will be preserved when you upgrade to a new cartridge version.
  • For more guidance on customization, refer to Adyen Customization Guide.

Before v 23.2.1

Not Recommended

  • We strongly discourage adding changes directly to /cartridges or /src/cartridges.
  • Customizations made in these directories cannot be easily separated from your codebase once deployed to production, leading to a more complex and costly upgrade process.

Requirements

It is required to have an Adyen TEST and, later, LIVE account to use the cartridge. You can set it up here or contact Adyen.

Installation, Usage and Configuration

Installation, Usage and Configuration is explained in Adyen's online documentation.

Apple Pay configuration for both Adyen certificate and Apple certificate using Salesforce cartridge can be found here. We recommend using Apple pay with Adyen certificate.

Testing

End-to-End tests can be found in the adyen-salesforce-commerce-cloud/tests/e2e directory. They are run automatically via Github Actions using the E2E.yml workflow. To run the tests locally use the following command:

`npm run test:e2e`

Note: Please make sure to fill in the environment variables in the fixtures directory before running the tests locally.

As for Unit tests, they are currently only available for SFRA. Test files can be found next to the files they are testing. Mocks are kept in the jest directory. To run SFRA unit tests locally use the following command:

`npm run test`

Support & Maintenance

We provide specialized cartridge support for 2 years for major versions, following the SFCC B2C Support policy, along with permanent Adyen support.

When a major cartridge version is no longer under cartridge support, it will be treated as a custom merchant integration. From version 23 onward, we do not provide any level of support for SiteGenesis integrations.

Migration and Upgrade Guide

SFCC Cartridge Support Schedule for SFRA and SiteGenesis

Contributing

We strongly encourage you to join us in contributing to this repository so everyone can benefit from:

  • New features and functionality
  • Resolved bug fixes and issues
  • Any general improvements

Read our contribution guidelines to find out how.

Platform

Read more information about the Adyen platform.

Licence

MIT license see LICENSE.