Brink CommerceConfigurationGetting startedIntegrationsFortnoxUnifaunIngridModelsPrice and Shipping RulesProduct Feed

Integrations

Brink Commerce offers custom integrations to a number of payment methods, logistics solutions, business management systems etc.

Contact us for more information.

support@brinkcommerce.com

Fortnox

Brink Commerce's app developed for Fortnox gets added to your Fortnox-integrations with our client-id: hUQFHNB4ean2

Unifaun

Brink Commerce has a integration with the Transportation Management provider Unifaun Please provide Brink Commerce with the required credentials before starting.

Brink Commerce provide a API for Unifaun delivery checkout.

GET /integrationv1/integrations/unifaun/delivery-checkout

With an active Brink cart, call to get the deliver checkout that is configured at Unifaun. Provide Brink Commerce with your deliveryCheckoutId.

IdentifierTypeDescriptionRestrictions
toCountryStringCountry code ISO 3166-1 format[A-Z]{2}
toZipCodeStringCustomer provided zip code
curl --request GET \
--url 'https://api.${env}.brinkcommerce.com/integrationv1/integrations/unifaun/delivery-checkout?toCountry=SE&toZipCode=122+66' \
--header 'authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiI3M2U3NTY3MS00NTUzLTRlODctYTkyYS01NGUwMDk0N2E2ZWIiLCJpYXQiOjE2MDA5NzIwMzEsImV4cCI6MTYwMTIzMTIzMX0.KZwLePY_3qC5RtsUzSAbCv30raHM0lUtm0QnGKS_UA4'

Response Json with the configured delivery options in Unifaun. Make sure these options are configured as shippingOption in Brink Commerce. This response can be used with Unifaun delivery checkout widget or a custom built component.

{
"deliveryCheckoutId": "ad4cf711-5658-488b-928b-79eafd14f4bb+0",
"currency": "SEK",
"language": "en",
"options": [
{
"id": "f0e27400-c8ce-4814-ad4c-74a45b6f942e",
"name": "Home Delivery",
"description1": "",
"description2": "",
"description3": "",
"description4": "",
"description5": "",
"description6": "",
"carrierId": null,
"priceDescription": null,
"priceValue": null,
"serviceId": null,
"subOptions": [
{
"id": "a090b4f5-d982-489d-bdf9-40b33696e5d6",
"name": "DHL Express Economy Select (duty-free)",
"description1": "",
"description2": "",
"description3": "",
"description4": "",
"description5": "",
"description6": "",
"carrierId": "dhlexpress",
"priceDescription": "90 SEK",
"priceValue": 90,
"serviceId": "DAESU",
"subOptions": [],
"agents": [],
"fields": [],
"addons": [],
"noDefaultAgent": false,
"genericKeyValues": [],
"optionIdSecondPart": "",
"optionIdFirstPart": "a090b4f5-d982-489d-bdf9-40b33696e5d6"
},
{
"id": "e2aaa8e4-c622-498a-bf4d-7bed465d379a",
"name": "DHL - Sverige",
"description1": "",
"description2": "",
"description3": "",
"description4": "",
"description5": "",
"description6": "",
"carrierId": "dhlexpress",
"priceDescription": "90 SEK",
"priceValue": 90,
"serviceId": "DADOM",
"subOptions": [],
"agents": [],
"fields": [
{
"id": "FCRECEIVERPHONE",
"description": "Phone",
"type": "PHONE",
"value": null,
"initialValue": null,
"mandatory": false,
"min": null,
"max": null,
"pattern": null,
"items": []
},
{
"id": "FCRECEIVERCONTACT",
"description": "Contact",
"type": "TEXT",
"value": null,
"initialValue": null,
"mandatory": false,
"min": null,
"max": null,
"pattern": null,
"items": []
}
],
"addons": [],
"noDefaultAgent": false,
"genericKeyValues": [],
"optionIdSecondPart": "",
"optionIdFirstPart": "e2aaa8e4-c622-498a-bf4d-7bed465d379a"
}
],
"agents": [],
"fields": [],
"addons": [],
"noDefaultAgent": false,
"genericKeyValues": [],
"optionIdSecondPart": "",
"optionIdFirstPart": "f0e27400-c8ce-4814-ad4c-74a45b6f942e"
}
],
"parameters": [],
"fields": [],
"addons": [],
"jsonPayload": "{\"Payload\":[\"Delivery Checkout ID: ad4cf711-5658-488b-928b-79eafd14f4bb+0\",\"Currency: SEK\",\"Language: en\"]}"
}

POST /integrationv1/integrations/unifaun/delivery-checkout

Based on the selection from the Unifaun delivery checkout widget (or custom made), create a prepared shipment in Unifaun connected to a Brink cart with

IdentifierTypeDescription
deliveryCheckoutIdStringThe versioned delivery checkout id from the request
selectedOptionIdStringThe customer selected option from the delivery checkout
shipment.agent.quickIdStringIf the selected option has an agent
selectedAddonsArrayIf the selected option has addons
fieldsArrayIf the selected option has fields
curl --request POST \
--url 'https://api.${env}.brinkcommerce.com/integrationv1/integrations/unifaun/delivery-checkout/' \
--header 'authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiI3M2U3NTY3MS00NTUzLTRlODctYTkyYS01NGUwMDk0N2E2ZWIiLCJpYXQiOjE2MDA5NzIwMzEsImV4cCI6MTYwMTIzMTIzMX0.KZwLePY_3qC5RtsUzSAbCv30raHM0lUtm0QnGKS_UA4' \
--data '{
"deliveryCheckoutId": "ad4cf711-5658-488b-928b-79eafd14f4bb+0",
"selectedOptionId": "3e037a47-7d19-4420-8850-c4dc0c618bfd",
"shipment": {
"agent": {
"quickId": "505176"
},
},
"selectedAddons": [
{
"id": "FCNOTIFYSMS",
"fields": [
{
"id": "sms",
"value": "098-391-2282"
}
]
}
],
"fields": [
{
"id": "string",
"value": "string"
}
]
}'

Update Brink cart with selected option

Make a update cart request with the selectedOptionId from the Unifaun delivery checkout

curl --request PUT \
--url https://api.${env}.brinkcommerce.com/orderv1/carts \
--header 'authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiI3M2U3NTY3MS00NTUzLTRlODctYTkyYS01NGUwMDk0N2E2ZWIiLCJpYXQiOjE2MDA5NzIwMzEsImV4cCI6MTYwMTIzMTIzMX0.KZwLePY_3qC5RtsUzSAbCv30raHM0lUtm0QnGKS_UA4' \
--header 'content-type: application/json' \
--data '{
"products": [
{
"id": "3e037a47-7d19-4420-8850-c4dc0c618bfd",
"quantity": 1
}
]
}
'

Complete the Brink Commerce checkout

Make the necessary cart to order requests and complete the flow

Brink Commerce order process

On order success|canceled Brink Commerce will create a stored shipment in Unifaun or remove the stored shipment

Ingrid

Brink Commerce has a integration with the Transportation Management provider Ingrid Please provide Brink Commerce with the required credentials before starting.

GET /integrationv1/integrations/ingrid/delivery-checkout

IdentifierTypeDescription
searchAddressObjectPostcal code and country code for user. Required
curl --request POST \
--url 'https://api.${env}.brinkcommerce.com/integrationv1/integrations/ingrid/delivery-checkout/' \
--header 'authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiI3M2U3NTY3MS00NTUzLTRlODctYTkyYS01NGUwMDk0N2E2ZWIiLCJpYXQiOjE2MDA5NzIwMzEsImV4cCI6MTYwMTIzMTIzMX0.KZwLePY_3qC5RtsUzSAbCv30raHM0lUtm0QnGKS_UA4' \
--data '{ "searchAddress": { "postalCode": "", "countryCode": "SE" } }'

Response

A sessioned created with Ingrid.

{
"jwtToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiI2NzEyMmJkMy1jN2NmLTRmZDEtYTJlMC02ZmM0OTE5MTk2MmIiLCJpYXQiOjE2MzQ0OTIyOTN9.N9Ev47hZqkk7qR0E9MIwDtSnILt2F0bEWBzi6tFxr_A",
"cart": {...},
"ingrid": {
"htmlSnippet": "<div id=\"shipwallet-container\" style=\"min-height:350px\"> <style> #ingrid-loader { min-height: 350px; padding: 32px 12px 12px 12px; border: 1px solid #e6e6e6; border-radius: 6px; background-color: white; } ._ingrid-skeleton { background-color: #ededed; position: relative; overflow: hidden; -webkit-mask-image: -webkit-radial-gradient(white, black); } ._ingrid-skeleton::before { content: ''; background-image: linear-gradient(90deg, #ededed 0px, #f8f8f8 80px, #ededed 160px); animation: transform 1.8s ease-out infinite; transform-origin: 0 0; width: 100vw; height: 100%; left: -160px; position: absolute; display: block; } ._ingrid-skeleton-text { height: 10px; } ._ingrid-skeleton-shipping-indicator { height: 45px; width: 100%; } ._ingrid-skeleton-shipping-indicator-label { margin-bottom: 20px; width: 100px; } ._ingrid-skeleton-delivery-categories-wrapper { display: flex; flex-direction: column; width: 100%; padding-bottom: 9px; } ._ingrid-skeleton-shipping-option-first-row { display: flex; align-items: center; width: 100%; } ._ingrid-skeleton-checkbox { width: 20px; height: 20px; border-radius: 10px; margin-right: 8px; } ._ingrid-skeleton-flex-1 { flex: 1; } ._ingrid-skeleton-shipping-option-name { width: 60%; } ._ingrid-skeleton-price { width: 30px; margin-right: 12px; } ._ingrid-skeleton-shipping-option-second-row { display: flex; width: 100%; } ._ingrid-skeleton-delivery-description { width: 35%; } ._ingrid-skeleton-delivery-logo { width: 32px; height: 32px; border-radius: 50%; } ._ingrid-skeleton-delivery-categories-label { width: 200px; } ._ingrid-skeleton-delivery-category-wrapper { padding-bottom: 16px; } @keyframes transform { to { transform: translateX(120%); } } ._ingrid-skeleton-zipcode-label { width: 70px; margin-bottom: 12px; } ._ingrid-skeleton-zipcode-input { height: 50px; width: 100%; margin-bottom: 28px; } </style> <div id=\"ingrid-loader\"> <div style=\"width: 100%\"> <div> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-zipcode-label\"></div> <div class=\"_ingrid-skeleton _ingrid-skeleton-zipcode-input\"></div> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-shipping-indicator-label\" ></div> <div class=\"_ingrid-skeleton-delivery-categories-wrapper\"> <div class=\"_ingrid-skeleton-delivery-category-wrapper\"> <div class=\"_ingrid-skeleton-shipping-option-first-row\"> <div class=\"_ingrid-skeleton _ingrid-skeleton-checkbox\"></div> <div class=\"_ingrid-skeleton-flex-1\"> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-shipping-option-name\" ></div> </div> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-price\"></div> <div class=\"_ingrid-skeleton _ingrid-skeleton-delivery-logo\"></div> </div> <div class=\"_ingrid-skeleton-shipping-option-second-row\"> <div class=\"_ingrid-skeleton-checkbox\"></div> <div class=\"_ingrid-skeleton-flex-1\"> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-delivery-description\" ></div> </div> </div> </div> <div class=\"_ingrid-skeleton-delivery-category-wrapper\"> <div class=\"_ingrid-skeleton-shipping-option-first-row\"> <div class=\"_ingrid-skeleton _ingrid-skeleton-checkbox\"></div> <div class=\"_ingrid-skeleton-flex-1\"> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-shipping-option-name\" ></div> </div> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-price\"></div> <div class=\"_ingrid-skeleton _ingrid-skeleton-delivery-logo\"></div> </div> <div class=\"_ingrid-skeleton-shipping-option-second-row\"> <div class=\"_ingrid-skeleton-checkbox\"></div> <div class=\"_ingrid-skeleton-flex-1\"> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-delivery-description\" ></div> </div> </div> </div> <div class=\"_ingrid-skeleton-delivery-category-wrapper\"> <div class=\"_ingrid-skeleton-shipping-option-first-row\"> <div class=\"_ingrid-skeleton _ingrid-skeleton-checkbox\"></div> <div class=\"_ingrid-skeleton-flex-1\"> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-shipping-option-name\" ></div> </div> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-price\"></div> <div class=\"_ingrid-skeleton _ingrid-skeleton-delivery-logo\"></div> </div> <div class=\"_ingrid-skeleton-shipping-option-second-row\"> <div class=\"_ingrid-skeleton-checkbox\"></div> <div class=\"_ingrid-skeleton-flex-1\"> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-delivery-description\" ></div> </div> </div> </div> <div class=\"_ingrid-skeleton-shipping-option-first-row\"> <div class=\"_ingrid-skeleton _ingrid-skeleton-checkbox\"></div> <div class=\"_ingrid-skeleton-flex-1\"> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-shipping-option-name\" ></div> </div> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-price\"></div> <div class=\"_ingrid-skeleton _ingrid-skeleton-delivery-logo\"></div> </div> <div class=\"_ingrid-skeleton-shipping-option-second-row\"> <div class=\"_ingrid-skeleton-checkbox\"></div> <div class=\"_ingrid-skeleton-flex-1\"> <div class=\"_ingrid-skeleton _ingrid-skeleton-text _ingrid-skeleton-delivery-description\" ></div> </div> </div> </div> </div> </div> </div> <script> (function(window, instanceId, containerId, document) { window[instanceId] = window[instanceId] || function() { (window[instanceId].q = window[instanceId].q || []).push(arguments) }; var bootstrapURL = \"https://cdn-stage.ingrid.com/checkout-widget/448ebaa/bootstrap.js\"; var bootstrapFallbackURL = \"https://cdn-stage.ingrid.com/checkout-widget/942f25ab5/scripts/bootstrap.js\"; if (/MSIE|Trident/.test(window.navigator.userAgent)) { bootstrapURL = bootstrapFallbackURL; } window[instanceId].config = { container: document.getElementById(containerId), bootstrapURL: bootstrapURL, bootstrapFallbackURL: bootstrapFallbackURL, features: {\"hide_toc\":false,\"show_shipping_price_on_service_points_view\":true,\"show_carrier_icons\":false,\"new_search_address\":true,\"door_code\":false,\"show_map\":true,\"hide_street_on_address_fields\":false,\"disable_address_form\":false,\"show_city_on_address_fields\":false,\"display_upfront_address\":true,\"autocomplete_street\":false,\"display_location_type\":false,\"dont_require_street_on_address_fields\":false,\"show_state_on_address_fields\":false,\"show_delivered_by\":false,\"show_street_on_address_module\":false,\"show_city_on_address_module\":false,\"require_street_on_address_module\":false,\"enable_ingrid_logo\":true,\"enable_widget_border\":false,\"enable_transparent_background\":false,\"show_shipping_categories_before_address\":false,\"enable_accent_color_for_widget_elements\":false,\"dark_color_enabled\":true,\"show_slogan\":false,\"show_carrier_logos_in_shipping_categories_placeholder\":false,\"enable_free_shipping_indicator\":false,\"enable_free_shipping_indicator_category_name_message\":false,\"enable_free_shipping_indicator_carrier_logo\":false,\"enable_delivery_address_form\":false,\"show_privacy_policy\":false,\"show_region\":false,\"require_region\":false,\"shipping_categories_visible_when_folded_count\":0,\"enable_multiple_home_delivery_in_category\":false,\"display_currency_iso_code\":false}, instanceId: instanceId, locale: \"en-US\", logging: \"https://c7a68a2a3cfe4024bf719e6485aa8751@sentry.io/141995\", status: \"ACTIVE\", style: null , session: \"7bbd4abb-0cac-43cd-a09c-85a448df2737\", token: \"Y2xpZW50dHdvOjljZDZmN2IyN2MyODRkNDg4OWMyMWE2Y2ZkZTNlMDc3\", version: \"298824ad\", loaderId: \"ingrid-loader\" }; var container = document.getElementById(containerId); var bootstrapScript = document.createElement(\"script\"); bootstrapScript.async = true; bootstrapScript.src = bootstrapURL; bootstrapScript.className = \"ingrid-bootstrap-script\"; bootstrapScript.addEventListener(\"load\", function (e) { if (typeof _ingrid_initializeWidgetInstance === \"function\") { _ingrid_initializeWidgetInstance(instanceId); } }); container.appendChild(bootstrapScript); })(window, '_sw', 'shipwallet-container', document); </script> <noscript> Please <a href=\"https://enable-javascript.com\">enable JavaScript</a>. </noscript></div>"
}
}

Load htmlSnippet:

useMountEffect(() => {
const mount = async () => {
const ingrid = await syncIngridDeliveryCheckout()
widgetRef.current.innerHTML = ingrid.htmlSnippet
replaceScriptNode(document.getElementById('shipwallet-container'))
}
mount()
})

Refresh snippet by sending a new call with an updated searchAddress.

if (window._sw) {
window._sw((api) => api.suspend())
}
syncIngridDeliveryCheckout().then(() => {
window._sw((api) => api.resume())
})
```
## Adyen
Brink Commerce has a integration with the Payment Prvider Adyen [Adyen](https://www.adyen.com/)
The integration follows the standard integration given by Adyen [Adyen Dropin](https://docs.adyen.com/online-payments/drop-in-web/), Brink will act as the merchant.
Please provide Brink Commerce with the required credentials before starting since Brink needs to configure the Adyen account before starting using the integration.
### POST /payments/adyen/paymentmethods
With an active Brink cart, call to get configured payment methods from Adyen.
| Identifier | Type | Description | Restrictions |
| -------------------------------- | :------: | :--------------------------------------------------------------:| :---------------: |
| countryCode | String | The shopper's country code [ISO 3166-1] format. | [A-Z]{2} |
| channel | String | The platform where a payment transaction takes place. | ios\|android\|web |
| shopperReference | String | Required for recurring payments, example user ID or account ID.| Min: 3chars |
| languageCode | String | The language code of the user. | |
| amount | Object | Formatted money object, i.e. amount + currency unit | currency: ^.{0,3} |
| blockedPaymentMethods | [String] | List of payment methods to block. | |
```shell
curl --request POST \
--url 'https://api.${env}.brinkcommerce.com/orderv1/payments/adyen/paymentmethods' \
--header 'authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiI3M2U3NTY3MS00NTUzLTRlODctYTkyYS01NGUwMDk0N2E2ZWIiLCJpYXQiOjE2MDA5NzIwMzEsImV4cCI6MTYwMTIzMTIzMX0.KZwLePY_3qC5RtsUzSAbCv30raHM0lUtm0QnGKS_UA4' \
--header 'content-type: application/json;charset=UTF-8' \
--data-raw '{
"countryCode": "SE",
"channel": "web",
"shopperReference": "1f1409cc-4741-49a0-854d-7d9ff589528a",
"languageCode": "en",
"amount": { "currency": "SEK", "value": 31000 }
}'

Pass the response to the dropin configuration.

const configuration = {
amount: {
value: "25000",
currency: "SEK",
},
paymentMethodsResponse: paymentMethodsResponse,
clientKey: "test_ASDF123",
locale: "sv",
environment: "test",
...
},
};

Client-key needs to be generated in Adyen admin, ask for a key, pass the domains that needs to be whitelisted for the key. Test can handle localhost but the live key can only be a proper domain with ssl.

POST /payments/adyen/payments

Initiate a payment within Adyen.

IdentifierTypeDescription
orderIdStringThe order id. Required
paymentMethodObjectstate.data.paymentMethod
storePaymentMethodStringstate.data.storePaymentMethod
browserInfoStringstate.data.browserInfo
shopperReferenceStringRequired for recurring payments, example user ID or account ID.
originStringwindow.location.origin
returnUrlStringThe URL where the shopper will be redirected back to.
curl --request POST \
--url 'https://api.${env}.brinkcommerce.com/orderv1/payments/adyen/paymentmethods' \
--header 'authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiI3M2U3NTY3MS00NTUzLTRlODctYTkyYS01NGUwMDk0N2E2ZWIiLCJpYXQiOjE2MDA5NzIwMzEsImV4cCI6MTYwMTIzMTIzMX0.KZwLePY_3qC5RtsUzSAbCv30raHM0lUtm0QnGKS_UA4' \
--header 'content-type: application/json;charset=UTF-8' \
--data-raw '{
"orderId": "5602ac78-4aa7-5dcc-9442-ab63c58e19d0",
"paymentMethod": {
"type": "scheme",
"holderName": "MAKKAN",
"encryptedCardNumber": "adyenjs_0_1_25$mFwbcZubNLpyz75T+RMW/Uc6nySlYYeJoB0UIZOLubtBqrKqIj4KJZlM+B+bxMWbPipHEMMqHgN0FTL9/Xd5kKFbkRnYtTcVGjoJfjGQkaTYJm1Duvn08vmXHO4EjK5O2KMFop1LsZyJZIzVn40j9y3gpl5ZALLoHOCXC/QYbOJMhDuUKoh981Ce1MZ60kxUV1UKW2WSkQOYLkRCR66G3kGLJo0RobQ2A9lLiHCRHL7iWvPxgMYrhYqZXdXEpp3D2vXkkVzYe8Fs/Ypd2wsdV3OdUoi442hz1ygp2P/kh3un1KYhKX/V06UzNCj7zLOEMXeAjXd17hkYC3NoECkfCQ==$Fuz2nOyJVy0Jc/ysfxgBr1tj2VNkcEEcLpswaYwaPW9jWys82p6pHXGU33MhW0qMzOtuPTJgzv8c5AljHh4E81p0AdLlrRa6q+51z8vd3U1DLikfWmHHevUGkoLVDGlPfgw5t5NDaRlNWfqSwlAUsh9Yojv+Jq07l1VbUCsW5vce83A47BQny7PzNegqu2DXETZJED3a5RTmZ3MpEKfyis9Vxk7LjlSxi2BnyNDFU8y3cTTemOL38Kc8lb2cKYHYFhs1MghNa2wHofiissL2ucXPoJMEPc5uLthQfQ//GS0R0lr1Fw3RR+KkwXuhc18z3GiKBN7KcYNcIelz9/Z+kPlUVBqwyyeb5WgyklE6rL5mGHoifEP2WIBJjP8KLInfxxVJ/EWw6FLALJ0I67sxmfEA3v9bs7HzqwGvRtn6LFRvk6gsMl2Das8iIRwx+iL6J7w8JmI0sqheTX+PCPx/xJPnd8Yy+xxJRaEN9QwF2zKr8uCb3le+tfip3rbDDXLReBvq8s0R1852BCCXMCsqwC83umnusVZXG/rWW/ls4Q/eMkH+kPy8Lpgl0CAzOnv3OhFyjGMvRBYU+p3qayoza4yeicZI5EFVCiS4AzTdKZHiaPXPq8l5HXgHkdB8lV9fTuzHSjgXF6rCAyu1uIT0KkVB7M7+VrNYwHO+9lyq1AaEueCJhOORzUjcNyWKFxzI9dZIAmNYJhtlUN/Mf+XNLo4m8pFAajlcUYmPZXm7wbmea34b+qZXwZMrRzNQ/w==",
"encryptedExpiryMonth": "adyenjs_0_1_25$PvWlxyT5tWL8IQ+cLBndEKjkFY8J7pTGVxF7ziLCIPKaqGmKqf/4RZP+NGxbXeC/H2nOlL3XmV7LAxSITTENX1iqbP175R0vHKlIqeIY2ENpeMGg2SQ8LfdafttRQ+Ju+x9+im+dWOLEONHiHs19g2DA4Av+EnTpeVOxak/TkmuRsSwlT5JvMLXBZEFkk09cCIzQTbGWiLgs7xPFcQnppKmsXReyZVanjiUjNIHDSr7mbXv98TwXXDLE/y+yuFxl9yAkr4CW/Kv7FuVPLRFsQcsGXJ3GvDSEzaraRBu/vNuDobfYj4/R/sockOh5BUur8dqnyPLTaotWpDpu2Q2b7g==$L5P6geatpuUN2I9vYbrwKkdksEcC+RIZV2j32ipf1v9iEhhYNabdsN/EPAfHgDe2qwn3wweU1INhMfoZGzlXiE+6si0rS3EN15opjFdcONrJ5yTsbgxEyh7ikP/NN19fna0aW4qj8cXPt9gd7X7xMsds4saVG+7N08pVLmnt8EuFxuv9TjfQKVcchmDVtSjSySbT74iHsVSSJZ6ZyztfpTuju0RzELn/cOgHY+GG8YLY8G6+UXkiBF2UiP6SXIKw6U1nMdmxeIY2ei5x6KJmLI4p77gSRCt2mdKSxxa75neylI9KBfcDAE28yg1FTmOtiiJLJ7nSlvOAxGocnKI/dS+eKTQvK7FqRPH8hM3hucx1mLpb3BfIER57c7dM9VRvZQdAH6CpZ/yb+Pj/4kXirzuP0PpA0Kk5NCniPsBvzIwqOTJntc6ISedytVYWADk=",
"encryptedExpiryYear": "adyenjs_0_1_25$ayi9Hg99PCpuy5sjMoAQO0G0vPT/X2f+sw0Si/xjPva1Wbam4UJwJZDD2rnalcifEjmwcmML+bHJIhzKfBlkCywvC28BThHtFpenUC/dN5LJ25MuuAa834XeOkUDE6DuAscTBmtyXBBDH/lFSu1QCzqmfxflRpF1SjYPyZRU4ZWVVR/hakGmmLDC7X+W4jpc8iQnbO4f3r17prm8bICMOeIKyQDQEnpLKD2VfKCZuW01j4V3Gx8M9+XKdJ0q0aMLJ49mJx9/jdO/bDcGAHJTagS/ZnJsFCrbvsVRax42kJJOweXMGptUwq06lZRx/LM77Al5kkcrZpP7abhHbzMiMg==$0zluwTUFIz9A7GJ0RMrf9HiEIjZ88JVUWxHQyh5I7Y+EwzowLnoNKdEvCNZyfetiV6UrmKoT9TdzWrqj/2yacZUIrZyBDmZVPmmd3JWOfgW2ugkzRVjBciHoY0u7Eb7sdGENyFJAMog5Q4wqAIVBsF4KyULdpLBEB6dbg1Cz6UGhxMyGodNtXfP9GtkegvXmvpRb6YtYvJfDvzWPmuxQuhgiyfPo5N+H4gdZe0KZahE3ubUoomPf21M8ONMZkPQhK+Ewg9XCkNGtJUGZ4aRQAIxcCsfe9GKPXiQpWmTN1R+ZlrwcKJth1RWFhn9Oi7PQoaJgn8OotAYrwrvZXxs8+1XxklYAkytCQ+LcUbPWBS+QcIpfNvl8frN16wpWPjRhPF0MeanOoFT3YURi+GoRPRUQtCcGAvoEfmXtVKY4BF4r2upalFnZuwiBM579hJ0U",
"encryptedSecurityCode": "adyenjs_0_1_25$mJenu28BB3wj4pzSw9lqgnq6B5DCQCXD/BW9gVvMuaAQMYs+3wV+StqNZvtTa7pGXo0MBiazonwU53oGItH5a9cvB//+rBUZhTWvqtiAsU8898JrzeplsJSNL42qk43Vwf0TZvm3dWGwAK8WsIEgWH7ZM1Mb0LKITmKmjKyXaGwHbpgYwmW4sYYX9uLBSNhk1pZmQ96CiLic0bseD6SnGcmpAkshZTB77NVI9ElcKVkKlmGvICdZ4wJnXqvFDE/Nd9v3iqdfpfC0wvVWaYixaxEsJDnX4ybnyzq8oarKJZb6Fn5PW2lY/bRqNIcSYJn+GRp//Y+be3MO6kx5MvYukw==$p4h+euQwI9hG6hE/W0gW6AoCNqLr3ci9PNxM1hfXsre15rTWaVPqAuDyLsVlOANsUbGL1OHrcghyhfvadzfjYvcEJNtXHOPBlXQA41NdW3XHCT3moNfOv++gfxL8aEK5aUh0AGLbDm+jDME3n70NDuJIUNYzgjcb7V7El1+tKmiXoiiCdi6zpTZv9cLNI9k//3+HdRHYewJ+ClO5RSadYxYpfgQKpmZ3IIi5xN0u1FKyD8VRkxKOrV/xNr/3orGO8BPnOriZG7B/aYLVmj3Bo9YHEVP1YBxjT5E6rwI2GBKD/f5dybO61oGjSPWoIFS2zaYlDq6IEyM6Wrm3940mDp8pg24UFYsIjAqG+JoV3UYL+JaL3ewH3YeEITe9j7YN9h8TM699Krsy7zddSjmNe+J2p3+X6NvRWFK2o+Vfbcg2yHNC1gCnEBrSEQDEXprXO2jdU3nzx3FeBSeiM/N1OAtsPz/jlFywd+314HvyNHnhFBptSl5D/PDt2RGuf3iskuRLXt77jNydCB5v+rRt2RAfovF+PijSEhWKpSn1H8agG3SipIOA6pUciA/cgiuTphA=",
"brand": "mc"
},
"storePaymentMethod": true,
"shopperReference": "7f9b426c-c947-4779-b93b-2d9d3c9d9a19",
"browserInfo": {
"acceptHeader": "*/*",
"colorDepth": 30,
"language": "sv",
"javaEnabled": false,
"screenHeight": 900,
"screenWidth": 1440,
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36",
"timeZoneOffset": -120
},
"origin": "https://demo.brinkcommerce.com",
"returnUrl": "https://demo.brinkcommerce.com/router/"
}'

Response

{
"paymentResult": {
"additionalData": {
"recurringProcessingModel": "CardOnFile",
"recurring.shopperReference": "7f9b426c-c947-4779-b93b-2d9d3c9d9a19",
"recurring.recurringDetailReference": "831634490040066K"
},
"pspReference": "883634490040598C",
"resultCode": "Authorised",
"amount": { "currency": "SEK", "value": 26000 },
"merchantReference": "63762"
},
"order": {...}
}

Check the result for next step, given that action is set, a new call with details might be necessary, see Adyen dropin.

POST /payments/adyen/payments/details

Details call for Adyen.

IdentifierTypeDescription
orderIdStringThe order id. Required
detailsObjectDetails object from make payment
curl --request POST \
--url 'https://api.${env}.brinkcommerce.com/orderv1/payments/adyen/payments/details' \
--header 'authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiI3M2U3NTY3MS00NTUzLTRlODctYTkyYS01NGUwMDk0N2E2ZWIiLCJpYXQiOjE2MDA5NzIwMzEsImV4cCI6MTYwMTIzMTIzMX0.KZwLePY_3qC5RtsUzSAbCv30raHM0lUtm0QnGKS_UA4' \
--header 'content-type: application/json;charset=UTF-8' \
--data-raw '{{
"orderId": "9b8a278e-3578-569a-b37b-1fe7ccc6be9f",
"details": {...}
}'