Installing and configuring Adyen
Edit on GitHubTo integrate Adyen into your project, first you need to install and configure the Adyen module. This topic describes how to do that.
Integration overview
The spryker-eco/adyen
module provides integration of Spryker e-commerce system with Adyen technology partner. It requires the SprykerEco.AdyenApi
spryker-eco/adyen-api
module that provides the REST Client for making API calls to the Adyen Payment Provider.
The SprykerEco.Adyen
module includes integration with:
- Checkout process—payment forms with all necessary fields that are required to make payment request and save order information.
- OMS (Order Management System)—state machines, all necessary commands for making modification requests, and conditions for changing orders status accordingly.
The SprykerEco.Adyen
module provides the following payment methods:
Installation
To install the Adyen module, run
composer require spryker-eco/adyen
Configuration
General Configuration
You can find all necessary configurations in vendor/spryker-eco/adyen/config/config.dist.php
.
The table below describes all general configuration keys and their values.
Configuration Key | Type | Description |
---|---|---|
AdyenConstants::MERCHANT_ACCOUNT |
string | Name of merchant account |
AdyenConstants::REQUEST_CHANNEL |
string | Name of channel communication with Adyen, has to be “Web” |
AdyenConstants::SDK_CHECKOUT_SECURED_FIELDS_URL |
string | JS SDK URL to encrypt Credit Card secure fields |
AdyenConstants::SDK_CHECKOUT_ORIGIN_KEY |
string | Origin key of JS SDK that generated based on project base URL |
AdyenConstants::SOFORT_RETURN_URL |
string | URL to return customer after pay on Sofort: http://mysprykershop.com/adyen/callback/redirect-sofort |
AdyenConstants::CREDIT_CARD_3D_RETURN_URL |
string | URL to return customer after passing 3D secure: http://mysprykershop.com/adyen/callback/redirect-credit-card-3 |
AdyenConstants::IDEAL_RETURN_URL |
string | URL to return customer after pay on iDeal: http://mysprykershop.com/adyen/callback/redirect-ideal |
AdyenConstants::PAY_PAL_RETURN_URL |
string | URL to return customer after pay on PayPal: http://mysprykershop.com/adyen/callback/redirect-paypal |
AdyenConstants::ALI_PAY_RETURN_URL |
string | URL to return customer after pay on AliPay: http://mysprykershop.com/adyen/callback/redirect-alipay |
AdyenConstants::WE_CHAT_PAY_RETURN_URL |
string | URL to return customer after pay on WeChatPay: http://mysprykershop.com/adyen/callback/redirect-wechatpay |
AdyenConstants::CREDIT_CARD_3D_SECURE_ENABLED |
bool | Is 3D secure enabled for Credit Card payments |
AdyenConstants::MULTIPLE_PARTIAL_CAPTURE_ENABLED |
bool | Is multiple capture enabled. Default false |
AdyenConstants::SOCIAL_SECURITY_NUMBER_COUNTRIES_MANDATORY |
array | List of countries with SSN mandatory |
AdyenConstants::IDEAL_ISSUERS_LIST |
array | List of iDeal issuers |
AdyenApiConstants::API_KEY |
string | API key, provided by Adyen |
AdyenApiConstants::GET_PAYMENT_METHODS_ACTION_URL |
string | URL for get available payment methods API call |
AdyenApiConstants::MAKE_PAYMENT_ACTION_URL |
string | URL for make payment API call |
AdyenApiConstants::PAYMENTS_DETAILS_ACTION_URL |
string | URL for payment details API call |
AdyenApiConstants::AUTHORIZE_ACTION_URL |
string | URL for authorize API call |
AdyenApiConstants::AUTHORIZE_3D_ACTION_URL |
string | URL for authorize 3D API call |
AdyenApiConstants::CAPTURE_ACTION_URL |
string | URL for capture API call |
AdyenApiConstants::CANCEL_ACTION_URL |
string | URL for cancel API call |
AdyenApiConstants::REFUND_ACTION_URL |
string | URL for refund API call |
AdyenApiConstants::CANCEL_OR_REFUND_ACTION_URL |
string | URL for cancel or refund API call (when it’s not possible to know is payment already captured) |
AdyenApiConstants::TECHNICAL_CANCEL_ACTION_URL |
string | URL for technical cancel API call |
AdyenApiConstants::ADJUST_AUTHORIZATION_ACTION_URL |
string | URL for adjust authorized amount API call |
Specific Configuration
Also, you have to add payment methods to State Machine (OMS) configuration:
$config[OmsConstants::PROCESS_LOCATION] = [
...
APPLICATION_ROOT_DIR . '/vendor/spryker-eco/adyen/config/Zed/Oms',
];
$config[OmsConstants::ACTIVE_PROCESSES] = [
...
'AdyenCreditCard01',
'AdyenSofort01',
'AdyenDirectDebit01',
'AdyenKlarnaInvoice01',
'AdyenPrepayment01',
'AdyenIdeal01',
'AdyenPayPal01',
'AdyenAliPay01',
'AdyenWeChatPay01',
];
$config[SalesConstants::PAYMENT_METHOD_STATEMACHINE_MAPPING] = [
...
AdyenConfig::ADYEN_CREDIT_CARD => 'AdyenCreditCard01',
AdyenConfig::ADYEN_SOFORT => 'AdyenSofort01',
AdyenConfig::ADYEN_DIRECT_DEBIT => 'AdyenDirectDebit01',
AdyenConfig::ADYEN_KLARNA_INVOICE => 'AdyenKlarnaInvoice01',
AdyenConfig::ADYEN_PREPAYMENT => 'AdyenPrepayment01',
AdyenConfig::ADYEN_IDEAL => 'AdyenIdeal01',
AdyenConfig::ADYEN_PAY_PAL => 'AdyenPayPal01',
AdyenConfig::ADYEN_ALI_PAY => 'AdyenAliPay01',
AdyenConfig::ADYEN_WE_CHAT_PAY => 'AdyenWeChatPay01',
];
Notifications
To complete the payment modification requests (cancel, capture, refund), it’s necessary to configure notification on Adyen merchant backend side.
You can get more information form Adyen documentation.
The link to accept notifications from Adyen looks like https://mysprykershop.com/adyen/notification.
Adyen Configuration
You can get your credentials by following the instruction.
You can get JS SDK url and generate your origin key by following this instruction from.
Thank you!
For submitting the form