Skip to content

SAP Commerce Cloud

Last updated: November 04, 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 above

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

  1. Download the latest Checkout.com SAP Commerce Cloud Connector. This contains the installer recipes and connector extensions.
  2. Unzip the Connector .zip file.
  3. Copy the extracted folders to the HYBRIS_ROOT of your Hybris installation.
  4. Remove the SAP Commerce fulfilment extension yacceleratorfulfilmentprocess from localextensions.xml, as the connector will handle the fulfilment using the checkoutfulfilmentprocess extension.
  5. Run the ant clean command from your Hybris bin/platform directory.
  6. 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.

  1. Run the following commands to install the add-ons to yaccelatorstorefront. You can replace yaccelatorstorefront with your custom storefront.
1
ant 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.

  1. Run the following code:
1
2
ant addoninstall -Daddonnames="checkoutsampledataaddon"
-DaddonStorefront.yacceleratorstorefront="yacceleratorstorefront"
  1. Run the ant clean all command from your Hybris bin/platform directory.
  2. Run the hybrisserver.sh command to start up the Hybris server.
  3. 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:

1
2
3
HYBRIS_HOME/installer$ ./install.sh -r [RECIPE_NAME] setup
HYBRIS_HOME/installer$ ./install.sh -r [RECIPE_NAME] initialize
HYBRIS_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.

  1. 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.
  2. Set Use NAS Authorisation Header key and Use NAS Signature key to True.
  3. 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.
  4. 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.
  5. 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.

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.