SAP Commerce Cloud
Last updated: November 4, 2022
SAP Commerce Cloud Connector integrates seamlessly with the SAP B2C Accelerator. The Connector for SAP Commerce Cloud (formerly Hybris) enables you to implement a global payment strategy through a single integration in a secure, compliant, and unified approach.
We currently support:
- SAP CC 1905, 2005, 2011, and 2105, including B2C Accelerator
- SAP Spartacus 3.2 frontend with server-side rendering (SSR) support, which is compatible with SAP CC 1905, 2005, and 2011
- SAP Spartacus 4.2 frontend with SSR support, which is compatible with SAP CC 2011 and later
This guide explains how to integrate with our plugin.
Supported features
- SAP Commerce Fulfilment process: With our APIs for authorization, capture, refund and void. The same functionality has been brought onto our Spartacus v3.2 storefront connector.
- SAP Commerce Backoffice: The connector provides specific customizations for the back office to ease the administration, configuration and management of all the operations related to the integration with our payment solution.
- 3DS 2.0 (PSD2): In case of a non-frictionless interaction, the user must enter additional information related to Strong Customer Authentication (SCA).
- SAP Web Content Management System (WCMS): The connector enables business users to add cards and alternative payment methods using CMS components.
- Express checkout: One-click payments with Apple Pay and Google Pay from the Product details page and Cart page.
Before you start
Create a test account
If you haven't already, create a test account with us.
Get your API keys
To set up our SAP CC plugin, you'll need four API keys: a secret key, a public key, a signature key, and an authorization header key. You can create your secret and public keys in Dashboard. The signature key and authorization header key are generated when you create a webhook for your business.
Install the plugin
- Download the latest Checkout.com SAP Commerce Cloud Connector. This contains the installer recipes and connector extensions.
- Unzip the Connector .zip file.
- Copy the extracted folders to the
HYBRIS_ROOT
of your Hybris installation. - Remove the SAP Commerce fulfilment extension
yacceleratorfulfilmentprocess
fromlocalextensions.xml
, as the connector will handle the fulfilment using thecheckoutfulfilmentprocess
extension. - Run the
ant clean
command from your Hybrisbin/platform
directory. - Edit your
localextensions.xml
and add the following:
1<path autoload="true" dir="${HYBRIS_BIN_DIR}/modules/checkoutcom" />
The extensions do not rely on any absolute paths, so you can place the extensions in a different location, such as ${HYBRIS_BIN_DIR}/custom
.
- Run the following commands to install the add-ons to
yaccelatorstorefront
. You can replaceyaccelatorstorefront
with your custom storefront.
1ant addoninstall -Daddonnames="checkoutaddon" DaddonStorefront.yacceleratorstorefront="yacceleratorstorefront"
Add our sample data add-on (optional)
Our optional sample data add-on allows you to add fields to the checkout page, which can be used to gather information from your customers or upsell services and products.
- Run the following code:
1ant addoninstall -Daddonnames="checkoutsampledataaddon"2-DaddonStorefront.yacceleratorstorefront="yacceleratorstorefront"
- Run the
ant clean all
command from your Hybris bin/platform directory. - Run the
hybrisserver.sh
command to start up the Hybris server. - Update your running system using
ant updatesystem
.
After setting up the hosts file, the connector will work initially without any external setup needed, because our sample data add-on will provide all the required data for the accelerator’s electronics and apparel stores.
The add-ons are independent and can be installed on separate server instances.
Install the add-on using the provided recipes
The add-on comes with one Gradle recipe to be used with the Hybris installer. The recipe is b2c_acc_plus_checkout_com
with b2c and Checkout.com functionality, and it is based on the b2b_acc_plus
recipes provided by Hybris.
The recipe generates the local.properties
file with the properties defined in the recipe. You can choose to add this file to the customconfig
folder.
To install the add-on using one of the recipes detailed in that folder, run the following commands:
1HYBRIS_HOME/installer$ ./install.sh -r [RECIPE_NAME] setup2HYBRIS_HOME/installer$ ./install.sh -r [RECIPE_NAME] initialize3HYBRIS_HOME/installer$ ./install.sh -r [RECIPE_NAME] start
Configure the global settings of the plugin
Our SAP Commerce Cloud Connector supports multiple Checkout.com channels, where a different website is connected to each channel. If you have multiple websites running on SAP Commerce Cloud, you can have a different configuration for each one and keep the payment transaction separate.
- In the Secret keys tab, set Use NAS to True, and enter your public key, secret key, signature key, and authorization header key in the corresponding fields.
- Set Use NAS Authorisation Header key and Use NAS Signature key to True.
- In the Global Settings tab, set the environment to Test, so you can start testing payments. You'll need to change this to Production when you're ready to go live.
- Select the Payment Action:
- The Authorize and Capture option means that the charge is authorized and captured (that is, the money due from the customer's account is moved into your account) at the same time.
- The Authorize option will only authorize the charge. You'll have to capture the payment manually.
- Set the following fields according to your preference:
- Review transactions at risk: If set to True, payment events coming from Checkout.com that have the risk flag set to
true
will be created with transaction status REVIEW. Otherwise, the payment status will be ACCEPTED. - Authorization amount validation threshold: This field is used to determine whether the authorization amount reflects the value of the order. The threshold is the allowed difference in the amounts that may exist due to the way the amounts are calculated. Increase it if you observe false positives in your integration.
- Billing descriptor: If set to True, the payment requests made will contain the billing descriptor name and city you have specified. Otherwise, no billing descriptor will be sent.
- Review transactions at risk: If set to True, payment events coming from Checkout.com that have the risk flag set to
Set up webhooks
We will send payment events for all webhooks configured in Dashboard. There should be at least one webhook created per environment pointing to the webhook event receiver. Read our webhook documentation for more information.
The connector requires the following events to be sent:
payment_approved
payment_pending
payment_declined
payment_expired
payment_canceled
payment_voided
payment_void_declined
payment_captured
payment_capture_declined
payment_refunded
payment_refund_declined
This reflects your checkoutComPaymentEventTypes
configuration property. If the webhook in Dashboard sends more events, the event receiver will ignore them.
Extend your configuration
You can extend your configuration to add more payment methods, accept 3D Secure payments, and more.