Search

Are you looking for test card numbers?

Would you like to contact support?

Plugin icon

Set up the OCC extension

Set up the SAP Omni Commerce Connect (OCC) extension in the Adyen add-on.

Adyen's core extension supports SAP Omni Commerce Connect (OCC) V2 via com.adyen.v6.facades.AdyenCheckoutFacade.

With this integration, you can accept:

The add-on supports the following methods:

Returns the stored cards associated to the shopping cart

  • OCC controller: UsersController.getPaymentInfos
  • Endpoint: GET /{USER_ID}/paymentdetails

This will internally call the following method:

PaymentDetailsListWsDTO getPaymentDetails(String userId) throws IOException, ApiException;

Receives and stores payment details

  • OCC controller: CartsController.addPaymentDetails
  • Endpoint: POST /{CART_ID}/paymentdetails

Depending on the payment method, you also have to pass some additional parameters:

  • Credit cards: Encrypted card holder data. For more information, refer to Cards.
  • Stored cards: The recurringDetailReference, the shopperReference, and the encrypted CVC. For more information, refer to Making payments with tokens.
  • Installments: The number of installments. For more information, refer to Credit cards.
  • Boleto: The social security number. For more information, refer to Boleto.

For example, to make an installments payment and store credit card details, submit a POST /{CART_ID}/paymentdetails call, providing:

{
   "encryptedCardNumber": "adyenjs_0_1_1 ...",
   "encryptedExpiryMonth": "adyenjs_0_1_1 ...",
   "encryptedExpiryYear": "adyenjs_0_1_1 ...",
   "encryptedSecurityCode": "adyenjs_0_1_1 ...",
   "installments": "10",
        "saveCardData": true,
        "accountHolderName": "ABC",
        "cardNumber": "4111111111111222",
        "expiryMonth": "03",
        "expiryYear": "2030",
        "cardType" : {"code": "visa"},
        "adyenPaymentMethod": "adyen_cc",
        "billingAddress" : {
            "titleCode": "mr",
            "firstName": "Joao",
            "lastName": "Paulo",
            "line1": "Rua Luiz Fernandes",
            "town": "SJC",
            "postalCode": "12236750",
            "country": {"isocode": "BR"},
            "shippingAddress": true,
            "region" : {
                "countryIso" : "BR",
                "isocode": "SP",
                "name": "Sao Paulo"
            }
        }
    }

This will internally call the following method:

PaymentDetailsWsDTO addPaymentDetails(PaymentDetailsWsDTO paymentDetails, DataMapper dataMapper);

Place an order using stored payment details

After storing payment information using the above methods, you can place an order:

  • OCC controller: OrdersController.placeOrder
  • Endpoint: POST /users/{USER_ID}/orders

This will internally call the following method:

OrderData authorisePayment(CartData cartData) throws Exception;

After a successful response from Adyen API, the system will register the payment response one the cart/order level. It returns an instance of OrderWSDTO obtained from OrderData of the placed order.

For Boleto, the response contains the pdf url, the Base64 encoded data, expiration date and due date.

Set up notification extension

If you want to receive Adyen notifications, add the following Adyen extension to the config/localextensions.xml file:

    <extension dir="${HYBRIS_BIN_DIR}/custom/adyen-hybris/adyenv6notification"/>

After you have added the notification extension, set up notifications in your Adyen Customer Area.

See also