Skip to content

Adyen/adyen-salesforce-commerce-cloud

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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.

Documentation and Support

For general inquiries related to this repository, developers are welcome to leverage AskDeepWiki AI knowledge base. Please note that while the DeepWiki can be a helpful resource, the official Adyen documentation remains the source of truth for the cartridge. Information found in the DeepWiki should be used at your own discretion.

Navigate to Adyen Docs to read about how to:

Adyen provides specialized cartridge support for 2 years for major versions, following the SFCC B2C Support policy, along with permanent Adyen support. Navigate to your Adyen Customer Area Merchant Account to raise a support case. When a major cartridge version is no longer under cartridge support, it will be treated as a custom merchant integration.

Customization Best Practices

Best practice!

  • Modularizing customizations is the recommended approach, as outlined by Salesforce.
  • To customize Adyen payments, create a custom cartridge in your project directory or leverage int_custom_cartridge, which is already set up in our repository.
  • For more guidance on customization, refer to Adyen Customization Guide.

Not Recommended

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

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.

Transpilation

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

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.

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`

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.