{"title":"Oney for API only","category":"default","creationDate":1567783140,"content":"<p>Accept Oney payments using our APIs, and build your own payment form to have full control over the look and feel of your checkout page.<\/p>\n<p>When making a Oney payment:<\/p>\n<ol>\n<li><a href=\"#paymentform\">Collect shopper details<\/a> and specify these in your <a href=\"#make-a-payment\">payment request<\/a>.<\/li>\n<li>Provide information about the purchased items by specifying <code>lineItems<\/code> in your <a href=\"#make-a-payment\">payment request<\/a>.<\/li>\n<li>Make sure that the payment is authorised and successfully <a href=\"#capture\">captured<\/a> before you ship the goods.<\/li>\n<\/ol>\n<h2>Requirements<\/h2>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Requirement<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><strong>Integration type<\/strong><\/td>\n<td style=\"text-align: left;\">Make sure that you have built an <a href=\"\/pt\/online-payments\/build-your-integration\/advanced-flow?platform=Web&amp;integration=API%20only\">API-only integration<\/a>. <\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Setup steps<\/strong><\/td>\n<td style=\"text-align: left;\">Before you begin, <a href=\"\/pt\/payment-methods\/add-payment-methods\">add Oney in your test Customer Area<\/a>.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\"paymentform\">Build your payment form for Oney<\/h2>\n<p>When making a Oney payment, collect the following shopper details:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Shopper detail<\/th>\n<th style=\"text-align: center;\">Required<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\">Full name<\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: left;\">The shopper's first name and last name.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Email<\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: left;\">The shopper's email address. This is where Oney will send the invoice.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Date of birth<\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: left;\">The shopper's date of birth, if specified.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Telephone number<\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: left;\">The shopper's telephone number.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Billing address<\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: left;\">The address of the shopper associated with their payment details, to be included on the invoice.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Delivery address<\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: left;\">The postal address of the shopper where the items will be delivered.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>If you are using the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/paymentMethods\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/paymentMethods<\/a> endpoint to show the available payment methods to the shopper, specify the following in your request:<\/p>\n<ul>\n<li> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/paymentMethods\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">countryCode<\/a>&#58; <span translate=\"no\"><strong>FR<\/strong><\/span>, <span translate=\"no\"><strong>ES<\/strong><\/span> or <span translate=\"no\"><strong>IT<\/strong><\/span><\/li>\n<li> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/paymentMethods#request-amount\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">amount.currency<\/a>&#58; <span translate=\"no\"><strong>EUR<\/strong><\/span><\/li>\n<li> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/paymentMethods#request-amount\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">amount.value<\/a>&#58; The value of the payment.<\/li>\n<\/ul>\n<p>Based on the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/paymentMethods\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">countryCode<\/a>, the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/paymentMethods\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/paymentMethods<\/a> response contains:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\"><code>paymentMethod.type<\/code><\/th>\n<th style=\"text-align: left;\">Number of installments and country\/region<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>facilypay_3x<\/strong><\/span><\/td>\n<td style=\"text-align: left;\">for 3 Oney installments in France (<span translate=\"no\"><strong>FR<\/strong><\/span>), Spain (<span translate=\"no\"><strong>ES<\/strong><\/span>) or Italy (<span translate=\"no\"><strong>IT<\/strong><\/span>).<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>facilypay_4x<\/strong><\/span><\/td>\n<td style=\"text-align: left;\">for 4 Oney installments in France (<span translate=\"no\"><strong>FR<\/strong><\/span>), Spain (<span translate=\"no\"><strong>ES<\/strong><\/span>) or Italy (<span translate=\"no\"><strong>IT<\/strong><\/span>).<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>facilypay_6x<\/strong><\/span><\/td>\n<td style=\"text-align: left;\">for 6 Oney installments in Spain (<span translate=\"no\"><strong>ES<\/strong><\/span>).<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>facilypay_10x<\/strong><\/span><\/td>\n<td style=\"text-align: left;\">for 10 Oney installments in France (<span translate=\"no\"><strong>FR<\/strong><\/span>) or Spain (<span translate=\"no\"><strong>ES<\/strong><\/span>).<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>facilypay_12x<\/strong><\/span><\/td>\n<td style=\"text-align: left;\">for 12 Oney installments in France (<span translate=\"no\"><strong>FR<\/strong><\/span>) or Spain (<span translate=\"no\"><strong>ES<\/strong><\/span>).<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div class=\"sc-notice info\"><div>\n<p>We provide logos for Oney which you can use on your payment form. For more information, refer to <a href=\"\/pt\/online-payments\/build-your-integration\/advanced-flow\/?platform=Web&amp;integration=API%20only#downloading-logos\">Downloading logos<\/a>.<\/p>\n<\/div><\/div>\n<h2 id=\"make-a-payment\">Make a payment<\/h2>\n<p>From your server, make a  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/payments<\/a> request, specifying:<\/p>\n<ul>\n<li>\n<p><code>paymentMethod.type<\/code>:  The type of Oney payment the shopper wants to use.\u00a0Possible values:<\/p>\n<ul>\n<li><span translate=\"no\"><strong>facilypay_3x<\/strong><\/span> (<span translate=\"no\"><strong>FR<\/strong><\/span>, <span translate=\"no\"><strong>ES<\/strong><\/span> or <span translate=\"no\"><strong>IT<\/strong><\/span>)<\/li>\n<li><span translate=\"no\"><strong>facilypay_4x<\/strong><\/span> (<span translate=\"no\"><strong>FR<\/strong><\/span>, <span translate=\"no\"><strong>ES<\/strong><\/span> or <span translate=\"no\"><strong>IT<\/strong><\/span>)<\/li>\n<li><span translate=\"no\"><strong>facilypay_6x<\/strong><\/span> (<span translate=\"no\"><strong>ES<\/strong><\/span> only)<\/li>\n<li><span translate=\"no\"><strong>facilypay_10x<\/strong><\/span> (<span translate=\"no\"><strong>FR<\/strong><\/span> or <span translate=\"no\"><strong>ES<\/strong><\/span>)<\/li>\n<li><span translate=\"no\"><strong>facilypay_12x<\/strong><\/span> (<span translate=\"no\"><strong>FR<\/strong><\/span> or <span translate=\"no\"><strong>ES<\/strong><\/span>)<\/li>\n<\/ul>\n<\/li>\n<li>\n<p> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments#request-shopperName\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">shopperName<\/a>&#58; The shopper's first and last name (required). Maximum length: 32 characters.<\/p>\n<\/li>\n<li>\n<p> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments#request-shopperEmail\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">shopperEmail<\/a>&#58;\u00a0The shopper's email address. This is where Oney will send the payment instructions.<\/p>\n<\/li>\n<li>\n<p> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments#request-dateOfBirth\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">dateOfBirth<\/a> <div data-component-wrapper=\"tag\">\n    <tag :variant=&quot;success&quot;>\n        Optional\n    <\/tag>\n<\/div>\n&#58;\u00a0The shopper's date of birth, if specified. The format must be YYYY-MM-DD.<\/p>\n<\/li>\n<li>\n<p> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments#request-telephoneNumber\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">telephoneNumber<\/a>&#58;\u00a0The shopper's mobile telephone number, using an international number format.<\/p>\n<ul>\n<li>France : <span translate=\"no\"><strong>+336<\/strong><\/span> or <span translate=\"no\"><strong>+337<\/strong><\/span> followed by eight digits<\/li>\n<li>Spain : <span translate=\"no\"><strong>+346<\/strong><\/span> or <span translate=\"no\"><strong>+347<\/strong><\/span> followed by eight digits<\/li>\n<li>Italy : <span translate=\"no\"><strong>+393<\/strong><\/span> followed by eight digits<\/li>\n<\/ul>\n<\/li>\n<li>\n<p> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments#request-billingAddress\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">billingAddress<\/a>&#58;\u00a0The address of the shopper associated with their payment details.<\/p>\n<ul>\n<li>\u00a0<code>billingAddress.postalCode<\/code> must have five characters.<\/li>\n<\/ul>\n<\/li>\n<li>\n<p> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments#request-deliveryAddress\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">deliveryAddress<\/a>&#58; The postal address of the shopper where the items will be delivered.<\/p>\n<ul>\n<li><code>deliveryAddress.postalCode<\/code> must have five characters.<\/li>\n<\/ul>\n<\/li>\n<li>\n<p> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments#request-countryCode\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">countryCode<\/a>&#58; The shopper's country\/region. <br>Format: the two-letter <a href=\"https:\/\/en.wikipedia.org\/wiki\/ISO_3166-1_alpha-2\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">ISO-3166-1 alpha-2<\/a> country code. Exception: <strong>QZ<\/strong> (Kosovo).<\/p>\n<\/li>\n<li>\n<p> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments#request-shopperLocale\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">shopperLocale<\/a>&#58;\u00a0A combination of language code and country code to specify the language used in\u00a0your checkout.\u00a0Refer to <a href=\"\/pt\/online-payments\/build-your-integration\/sessions-flow\/?platform=Web&amp;integration=Drop-in#optional-configuration\">list of supported languages<\/a>.<\/p>\n<\/li>\n<li>\n<p> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments#request-lineItems\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">lineItems<\/a>&#58;\u00a0Price and product information about the purchased items.<\/p>\n<div class=\"notices yellow\">\nOney will only approve the payment if the total amount specified in <code>lineItems<\/code> matches the <code>amount.value<\/code>.\n<\/div>\n<\/li>\n<li>\n<p> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments#request-shopperReference\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">shopperReference<\/a>&#58; A unique reference to identify the shopper. Minimum length: three characters.<\/p>\n<\/li>\n<li>\n<p> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments#request-returnUrl\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">returnUrl<\/a>&#58;\u00a0The URL where the shopper will be redirected back to after completing the payment.  The URL can contain a maximum of 1024 characters and must include the protocol: <code>http:\/\/<\/code> or <code>https:\/\/<\/code>. For example, <code>https:\/\/your-company.example.com\/checkout\/<\/code>. You can also include your own additional query parameters, for example, shopper ID or order reference number.<\/p>\n<\/li>\n<li>\n<p><code>additionalData.oneydata.trustFlag<\/code> <div data-component-wrapper=\"tag\">\n    <tag :variant=&quot;success&quot;>\n        Optional\n    <\/tag>\n<\/div>\n: An optional field to flag trusted shoppers to Oney for their risk assessment. To use this feature Oney must enable the Oney trust setting on your account. Possible values: <strong>2<\/strong>, <strong>1<\/strong>, <strong>0<\/strong>, <strong>-1<\/strong>, <strong>-2<\/strong>.<\/p>\n<\/li>\n<li>\n<p><code>additionalData.oneydata.merchantPays<\/code> <div data-component-wrapper=\"tag\">\n    <tag :variant=&quot;success&quot;>\n        Optional\n    <\/tag>\n<\/div>\n: An optional field to override the default configuration. When we set up Oney for your merchant account, we also configure who pays the interest fees.<\/p>\n<ul>\n<li><span translate=\"no\"><strong>true<\/strong><\/span>: You pay the interest fees for the shopper.<\/li>\n<li><span translate=\"no\"><strong>false<\/strong><\/span>: The shopper pays the interest fees.<\/li>\n<\/ul>\n<p>For example:<\/p>\n<pre><code class=\"language-json\">\"additionalData\": {\n    \"oneydata.merchantPays\": true,\n    \"oneydata.trustFlag\": \"1\"\n}<\/code><\/pre>\n<\/li>\n<\/ul>\n<p>Here's an example of a payment of <strong>EUR&nbsp;150<\/strong> split into three installments.<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"''\" :id=\"'payments'\" :code-data=\"[{&quot;language&quot;:&quot;bash&quot;,&quot;tabTitle&quot;:&quot;curl&quot;,&quot;content&quot;:&quot;# Set your X-API-KEY with the API key from the Customer Area.\\ncurl https:\\\/\\\/checkout-test.adyen.com\\\/v68\\\/payments \\\\\\n-H 'x-api-key: ADYEN_API_KEY' \\\\\\n-H 'content-type: application\\\/json' \\\\\\n-d '{\\n  \\&quot;merchantAccount\\&quot;: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  \\&quot;reference\\&quot;: \\&quot;YOUR_ORDER_NUMBER\\&quot;,\\n  \\&quot;countryCode\\&quot;: \\&quot;FR\\&quot;,\\n  \\&quot;amount\\&quot;: {\\n    \\&quot;currency\\&quot;: \\&quot;EUR\\&quot;,\\n    \\&quot;value\\&quot;: 15000\\n  },\\n  \\&quot;paymentMethod\\&quot;: {\\n    \\&quot;type\\&quot;: \\&quot;facilypay_3x\\&quot;\\n  },\\n  \\&quot;billingAddress\\&quot;: {\\n    \\&quot;city\\&quot;: \\&quot;UGINE\\&quot;,\\n    \\&quot;country\\&quot;: \\&quot;FR\\&quot;,\\n    \\&quot;houseNumberOrName\\&quot;: \\&quot;0\\&quot;,\\n    \\&quot;postalCode\\&quot;: \\&quot;73400\\&quot;,\\n    \\&quot;street\\&quot;: \\&quot;461 Rue du Centenaire\\&quot;\\n  },\\n  \\&quot;deliveryAddress\\&quot;: {\\n    \\&quot;city\\&quot;: \\&quot;UGINE\\&quot;,\\n    \\&quot;country\\&quot;: \\&quot;FR\\&quot;,\\n    \\&quot;houseNumberOrName\\&quot;: \\&quot;0\\&quot;,\\n    \\&quot;postalCode\\&quot;: \\&quot;73400\\&quot;,\\n    \\&quot;stateOrProvince\\&quot;: \\&quot;\\&quot;,\\n    \\&quot;street\\&quot;: \\&quot;461 Rue du Centenaire\\&quot;\\n  },\\n  \\&quot;shopperName\\&quot;: {\\n    \\&quot;firstName\\&quot;: \\&quot;Testperson-fr\\&quot;,\\n    \\&quot;lastName\\&quot;: \\&quot;Approved\\&quot;\\n  },\\n  \\&quot;telephoneNumber\\&quot;: \\&quot;+33 1 76 35 07 90\\&quot;,\\n  \\&quot;dateOfBirth\\&quot;: \\&quot;1985-07-30\\&quot;,\\n  \\&quot;shopperEmail\\&quot;: \\&quot;shopper@example.com\\&quot;,\\n  \\&quot;shopperLocale\\&quot;: \\&quot;fr_FR\\&quot;,\\n  \\&quot;lineItems\\&quot; : [\\n      {\\n         \\&quot;taxPercentage\\&quot; : 0,\\n         \\&quot;id\\&quot; : \\&quot;item1\\&quot;,\\n         \\&quot;taxAmount\\&quot; : 0,\\n         \\&quot;description\\&quot; : \\&quot;Test Item 1\\&quot;,\\n         \\&quot;amountIncludingTax\\&quot; : 5000,\\n         \\&quot;quantity\\&quot; : 1,\\n         \\&quot;amountExcludingTax\\&quot; : 5000\\n      },\\n      {\\n         \\&quot;taxPercentage\\&quot; : 0,\\n         \\&quot;id\\&quot; : \\&quot;item2\\&quot;,\\n         \\&quot;taxAmount\\&quot; : 0,\\n         \\&quot;description\\&quot; : \\&quot;Test Item 2\\&quot;,\\n         \\&quot;amountIncludingTax\\&quot; : 10000,\\n         \\&quot;quantity\\&quot; : 1,\\n         \\&quot;amountExcludingTax\\&quot; : 10000\\n      }\\n   ],\\n  \\&quot;shopperReference\\&quot;: \\&quot;YOUR_UNIQUE_SHOPPER_ID\\&quot;,\\n  \\&quot;returnUrl\\&quot;: \\&quot;https:\\\/\\\/your-company.example.com\\\/checkout?shopperOrder=12xy..\\&quot;\\n}'&quot;},{&quot;language&quot;:&quot;java&quot;,&quot;tabTitle&quot;:&quot;Java&quot;,&quot;content&quot;:&quot;\\\/\\\/ Adyen Java API Library v27.0.0\\nimport com.adyen.Client;\\nimport com.adyen.enums.Environment;\\nimport com.adyen.model.checkout.*;\\nimport java.time.OffsetDateTime;\\nimport java.util.*;\\nimport com.adyen.model.RequestOptions;\\nimport com.adyen.service.checkout.*;\\n\\n\\\/\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\nClient client = new Client(\\&quot;ADYEN_API_KEY\\&quot;, Environment.TEST);\\n\\n\\\/\\\/ Create the request object(s)\\nAmount amount = new Amount()\\n  .currency(\\&quot;EUR\\&quot;)\\n  .value(15000L);\\n\\nLineItem lineItem1 = new LineItem()\\n  .quantity(1L)\\n  .taxPercentage(0L)\\n  .amountExcludingTax(5000L)\\n  .description(\\&quot;Test Item 1\\&quot;)\\n  .id(\\&quot;item1\\&quot;)\\n  .taxAmount(0L)\\n  .amountIncludingTax(5000L);\\n\\nLineItem lineItem2 = new LineItem()\\n  .quantity(1L)\\n  .taxPercentage(0L)\\n  .amountExcludingTax(10000L)\\n  .description(\\&quot;Test Item 2\\&quot;)\\n  .id(\\&quot;item2\\&quot;)\\n  .taxAmount(0L)\\n  .amountIncludingTax(10000L);\\n\\nName name = new Name()\\n  .firstName(\\&quot;Testperson-fr\\&quot;)\\n  .lastName(\\&quot;Approved\\&quot;);\\n\\nDeliveryAddress deliveryAddress = new DeliveryAddress()\\n  .country(\\&quot;FR\\&quot;)\\n  .stateOrProvince(\\&quot;\\&quot;)\\n  .city(\\&quot;UGINE\\&quot;)\\n  .houseNumberOrName(\\&quot;0\\&quot;)\\n  .street(\\&quot;461 Rue du Centenaire\\&quot;)\\n  .postalCode(\\&quot;73400\\&quot;);\\n\\nPaymentDetails paymentDetails = new PaymentDetails()\\n  .type(PaymentDetails.TypeEnum.FACILYPAY_3X);\\n\\nBillingAddress billingAddress = new BillingAddress()\\n  .country(\\&quot;FR\\&quot;)\\n  .city(\\&quot;UGINE\\&quot;)\\n  .houseNumberOrName(\\&quot;0\\&quot;)\\n  .street(\\&quot;461 Rue du Centenaire\\&quot;)\\n  .postalCode(\\&quot;73400\\&quot;);\\n\\nPaymentRequest paymentRequest = new PaymentRequest()\\n  .amount(amount)\\n  .telephoneNumber(\\&quot;+33 1 76 35 07 90\\&quot;)\\n  .dateOfBirth(OffsetDateTime.parse(\\&quot;1985-07-30\\&quot;))\\n  .shopperEmail(\\&quot;shopper@example.com\\&quot;)\\n  .reference(\\&quot;YOUR_ORDER_NUMBER\\&quot;)\\n  .lineItems(Arrays.asList(lineItem1, lineItem2))\\n  .shopperName(name)\\n  .merchantAccount(\\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;)\\n  .deliveryAddress(deliveryAddress)\\n  .countryCode(\\&quot;FR\\&quot;)\\n  .paymentMethod(new CheckoutPaymentMethod(paymentDetails))\\n  .billingAddress(billingAddress)\\n  .shopperLocale(\\&quot;fr_FR\\&quot;)\\n  .returnUrl(\\&quot;https:\\\/\\\/your-company.example.com\\\/checkout?shopperOrder=12xy..\\&quot;)\\n  .shopperReference(\\&quot;YOUR_UNIQUE_SHOPPER_ID\\&quot;);\\n\\n\\\/\\\/ Send the request\\nPaymentsApi service = new PaymentsApi(client);\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\&quot;UUID\\&quot;));&quot;},{&quot;language&quot;:&quot;php&quot;,&quot;tabTitle&quot;:&quot;PHP&quot;,&quot;content&quot;:&quot;\\\/\\\/ Adyen PHP API Library v19.0.0\\nuse Adyen\\\\Client;\\nuse Adyen\\\\Environment;\\nuse Adyen\\\\Model\\\\Checkout\\\\Amount;\\nuse Adyen\\\\Model\\\\Checkout\\\\LineItem;\\nuse Adyen\\\\Model\\\\Checkout\\\\Name;\\nuse Adyen\\\\Model\\\\Checkout\\\\DeliveryAddress;\\nuse Adyen\\\\Model\\\\Checkout\\\\CheckoutPaymentMethod;\\nuse Adyen\\\\Model\\\\Checkout\\\\BillingAddress;\\nuse Adyen\\\\Model\\\\Checkout\\\\PaymentRequest;\\nuse Adyen\\\\Service\\\\Checkout\\\\PaymentsApi;\\n\\n$client = new Client();\\n$client-&gt;setXApiKey(\\&quot;ADYEN_API_KEY\\&quot;);\\n\\\/\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\n$client-&gt;setEnvironment(Environment::TEST);\\n\\n\\n\\\/\\\/ Create the request object(s)\\n$amount = new Amount();\\n$amount\\n  -&gt;setCurrency(\\&quot;EUR\\&quot;)\\n  -&gt;setValue(15000);\\n\\n$lineItem1 = new LineItem();\\n$lineItem1\\n  -&gt;setQuantity(1)\\n  -&gt;setTaxPercentage(0)\\n  -&gt;setAmountExcludingTax(5000)\\n  -&gt;setDescription(\\&quot;Test Item 1\\&quot;)\\n  -&gt;setId(\\&quot;item1\\&quot;)\\n  -&gt;setTaxAmount(0)\\n  -&gt;setAmountIncludingTax(5000);\\n\\n$lineItem2 = new LineItem();\\n$lineItem2\\n  -&gt;setQuantity(1)\\n  -&gt;setTaxPercentage(0)\\n  -&gt;setAmountExcludingTax(10000)\\n  -&gt;setDescription(\\&quot;Test Item 2\\&quot;)\\n  -&gt;setId(\\&quot;item2\\&quot;)\\n  -&gt;setTaxAmount(0)\\n  -&gt;setAmountIncludingTax(10000);\\n\\n$name = new Name();\\n$name\\n  -&gt;setFirstName(\\&quot;Testperson-fr\\&quot;)\\n  -&gt;setLastName(\\&quot;Approved\\&quot;);\\n\\n$deliveryAddress = new DeliveryAddress();\\n$deliveryAddress\\n  -&gt;setCountry(\\&quot;FR\\&quot;)\\n  -&gt;setStateOrProvince(\\&quot;\\&quot;)\\n  -&gt;setCity(\\&quot;UGINE\\&quot;)\\n  -&gt;setHouseNumberOrName(\\&quot;0\\&quot;)\\n  -&gt;setStreet(\\&quot;461 Rue du Centenaire\\&quot;)\\n  -&gt;setPostalCode(\\&quot;73400\\&quot;);\\n\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\n$checkoutPaymentMethod\\n  -&gt;setType(\\&quot;facilypay_3x\\&quot;);\\n\\n$billingAddress = new BillingAddress();\\n$billingAddress\\n  -&gt;setCountry(\\&quot;FR\\&quot;)\\n  -&gt;setCity(\\&quot;UGINE\\&quot;)\\n  -&gt;setHouseNumberOrName(\\&quot;0\\&quot;)\\n  -&gt;setStreet(\\&quot;461 Rue du Centenaire\\&quot;)\\n  -&gt;setPostalCode(\\&quot;73400\\&quot;);\\n\\n$paymentRequest = new PaymentRequest();\\n$paymentRequest\\n  -&gt;setAmount($amount)\\n  -&gt;setTelephoneNumber(\\&quot;+33 1 76 35 07 90\\&quot;)\\n  -&gt;setDateOfBirth(\\&quot;1985-07-30\\&quot;)\\n  -&gt;setShopperEmail(\\&quot;shopper@example.com\\&quot;)\\n  -&gt;setReference(\\&quot;YOUR_ORDER_NUMBER\\&quot;)\\n  -&gt;setLineItems(array($lineItem1, $lineItem2))\\n  -&gt;setShopperName($name)\\n  -&gt;setMerchantAccount(\\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;)\\n  -&gt;setDeliveryAddress($deliveryAddress)\\n  -&gt;setCountryCode(\\&quot;FR\\&quot;)\\n  -&gt;setPaymentMethod($checkoutPaymentMethod)\\n  -&gt;setBillingAddress($billingAddress)\\n  -&gt;setShopperLocale(\\&quot;fr_FR\\&quot;)\\n  -&gt;setReturnUrl(\\&quot;https:\\\/\\\/your-company.example.com\\\/checkout?shopperOrder=12xy..\\&quot;)\\n  -&gt;setShopperReference(\\&quot;YOUR_UNIQUE_SHOPPER_ID\\&quot;);\\n\\n$requestOptions['idempotencyKey'] = 'UUID';\\n\\n\\\/\\\/ Send the request\\n$service = new PaymentsApi($client);\\n$response = $service-&gt;payments($paymentRequest, $requestOptions);&quot;},{&quot;language&quot;:&quot;cs&quot;,&quot;tabTitle&quot;:&quot;C#&quot;,&quot;content&quot;:&quot;\\\/\\\/ Adyen .net API Library v17.0.0\\nusing Adyen;\\nusing Environment = Adyen.Model.Environment;\\nusing Adyen.Model;\\nusing Adyen.Model.Checkout;\\nusing Adyen.Service.Checkout;\\n\\n\\\/\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\nvar config = new Config()\\n{\\n    XApiKey = \\&quot;ADYEN_API_KEY\\&quot;,\\n    Environment = Environment.Test\\n};\\nvar client = new Client(config);\\n\\n\\\/\\\/ Create the request object(s)\\nAmount amount = new Amount\\n{\\n  Currency = \\&quot;EUR\\&quot;,\\n  Value = 15000\\n};\\n\\nLineItem lineItem1 = new LineItem\\n{\\n  Quantity = 1,\\n  TaxPercentage = 0,\\n  AmountExcludingTax = 5000,\\n  Description = \\&quot;Test Item 1\\&quot;,\\n  Id = \\&quot;item1\\&quot;,\\n  TaxAmount = 0,\\n  AmountIncludingTax = 5000\\n};\\n\\nLineItem lineItem2 = new LineItem\\n{\\n  Quantity = 1,\\n  TaxPercentage = 0,\\n  AmountExcludingTax = 10000,\\n  Description = \\&quot;Test Item 2\\&quot;,\\n  Id = \\&quot;item2\\&quot;,\\n  TaxAmount = 0,\\n  AmountIncludingTax = 10000\\n};\\n\\nName name = new Name\\n{\\n  FirstName = \\&quot;Testperson-fr\\&quot;,\\n  LastName = \\&quot;Approved\\&quot;\\n};\\n\\nDeliveryAddress deliveryAddress = new DeliveryAddress\\n{\\n  Country = \\&quot;FR\\&quot;,\\n  StateOrProvince = \\&quot;\\&quot;,\\n  City = \\&quot;UGINE\\&quot;,\\n  HouseNumberOrName = \\&quot;0\\&quot;,\\n  Street = \\&quot;461 Rue du Centenaire\\&quot;,\\n  PostalCode = \\&quot;73400\\&quot;\\n};\\n\\nPaymentDetails paymentDetails = new PaymentDetails\\n{\\n  Type = PaymentDetails.TypeEnum.Facilypay3x\\n};\\n\\nBillingAddress billingAddress = new BillingAddress\\n{\\n  Country = \\&quot;FR\\&quot;,\\n  City = \\&quot;UGINE\\&quot;,\\n  HouseNumberOrName = \\&quot;0\\&quot;,\\n  Street = \\&quot;461 Rue du Centenaire\\&quot;,\\n  PostalCode = \\&quot;73400\\&quot;\\n};\\n\\nPaymentRequest paymentRequest = new PaymentRequest\\n{\\n  Amount = amount,\\n  TelephoneNumber = \\&quot;+33 1 76 35 07 90\\&quot;,\\n  DateOfBirth = DateTime.Parse(\\&quot;1985-07-30\\&quot;),\\n  ShopperEmail = \\&quot;shopper@example.com\\&quot;,\\n  Reference = \\&quot;YOUR_ORDER_NUMBER\\&quot;,\\n  LineItems = new List&lt;LineItem&gt;{ lineItem1, lineItem2 },\\n  ShopperName = name,\\n  MerchantAccount = \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  DeliveryAddress = deliveryAddress,\\n  CountryCode = \\&quot;FR\\&quot;,\\n  PaymentMethod = new CheckoutPaymentMethod(paymentDetails),\\n  BillingAddress = billingAddress,\\n  ShopperLocale = \\&quot;fr_FR\\&quot;,\\n  ReturnUrl = \\&quot;https:\\\/\\\/your-company.example.com\\\/checkout?shopperOrder=12xy..\\&quot;,\\n  ShopperReference = \\&quot;YOUR_UNIQUE_SHOPPER_ID\\&quot;\\n};\\n\\n\\\/\\\/ Send the request\\nvar service = new PaymentsService(client);\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\&quot;UUID\\&quot;});&quot;},{&quot;language&quot;:&quot;js&quot;,&quot;tabTitle&quot;:&quot;NodeJS (JavaScript)&quot;,&quot;content&quot;:&quot;\\\/\\\/ Adyen Node API Library v18.0.0\\n\\\/\\\/ Require the parts of the module you want to use\\nconst { Client, CheckoutAPI } = require('@adyen\\\/api-library');\\n\\\/\\\/ Initialize the client object\\n\\\/\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\nconst client = new Client({apiKey: \\&quot;ADYEN_API_KEY\\&quot;, environment: \\&quot;TEST\\&quot;});\\n\\n\\\/\\\/ Create the request object(s)\\nconst paymentRequest = {\\n  merchantAccount: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  reference: \\&quot;YOUR_ORDER_NUMBER\\&quot;,\\n  countryCode: \\&quot;FR\\&quot;,\\n  amount: {\\n    currency: \\&quot;EUR\\&quot;,\\n    value: 15000\\n  },\\n  paymentMethod: {\\n    type: \\&quot;facilypay_3x\\&quot;\\n  },\\n  billingAddress: {\\n    city: \\&quot;UGINE\\&quot;,\\n    country: \\&quot;FR\\&quot;,\\n    houseNumberOrName: \\&quot;0\\&quot;,\\n    postalCode: \\&quot;73400\\&quot;,\\n    street: \\&quot;461 Rue du Centenaire\\&quot;\\n  },\\n  deliveryAddress: {\\n    city: \\&quot;UGINE\\&quot;,\\n    country: \\&quot;FR\\&quot;,\\n    houseNumberOrName: \\&quot;0\\&quot;,\\n    postalCode: \\&quot;73400\\&quot;,\\n    stateOrProvince: \\&quot;\\&quot;,\\n    street: \\&quot;461 Rue du Centenaire\\&quot;\\n  },\\n  shopperName: {\\n    firstName: \\&quot;Testperson-fr\\&quot;,\\n    lastName: \\&quot;Approved\\&quot;\\n  },\\n  telephoneNumber: \\&quot;+33 1 76 35 07 90\\&quot;,\\n  dateOfBirth: new Date(\\&quot;1985-07-30\\&quot;),\\n  shopperEmail: \\&quot;shopper@example.com\\&quot;,\\n  shopperLocale: \\&quot;fr_FR\\&quot;,\\n  lineItems: [ {\\n    taxPercentage: 0,\\n    id: \\&quot;item1\\&quot;,\\n    taxAmount: 0,\\n    description: \\&quot;Test Item 1\\&quot;,\\n    amountIncludingTax: 5000,\\n    quantity: 1,\\n    amountExcludingTax: 5000\\n  }, {\\n    taxPercentage: 0,\\n    id: \\&quot;item2\\&quot;,\\n    taxAmount: 0,\\n    description: \\&quot;Test Item 2\\&quot;,\\n    amountIncludingTax: 10000,\\n    quantity: 1,\\n    amountExcludingTax: 10000\\n  } ],\\n  shopperReference: \\&quot;YOUR_UNIQUE_SHOPPER_ID\\&quot;,\\n  returnUrl: \\&quot;https:\\\/\\\/your-company.example.com\\\/checkout?shopperOrder=12xy..\\&quot;\\n}\\n\\n\\\/\\\/ Send the request\\nconst checkoutAPI = new CheckoutAPI(client);\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\&quot;UUID\\&quot; });&quot;},{&quot;language&quot;:&quot;go&quot;,&quot;tabTitle&quot;:&quot;Go&quot;,&quot;content&quot;:&quot;\\\/\\\/ Adyen Go API Library v10.4.0\\nimport (\\n  \\&quot;context\\&quot;\\n  \\&quot;time\\&quot;\\n  \\&quot;github.com\\\/adyen\\\/adyen-go-api-library\\\/v9\\\/src\\\/common\\&quot;\\n  \\&quot;github.com\\\/adyen\\\/adyen-go-api-library\\\/v9\\\/src\\\/adyen\\&quot;\\n  \\&quot;github.com\\\/adyen\\\/adyen-go-api-library\\\/v9\\\/src\\\/checkout\\&quot;\\n)\\n\\\/\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\nclient := adyen.NewClient(&amp;common.Config{\\n  ApiKey:      \\&quot;ADYEN_API_KEY\\&quot;,\\n  Environment: common.TestEnv,\\n})\\n\\n\\\/\\\/ Create the request object(s)\\namount := checkout.Amount{\\n  Currency: \\&quot;EUR\\&quot;,\\n  Value: 15000,\\n}\\n\\nlineItem1 := checkout.LineItem{\\n  Quantity: common.PtrInt64(1),\\n  TaxPercentage: common.PtrInt64(0),\\n  AmountExcludingTax: common.PtrInt64(5000),\\n  Description: common.PtrString(\\&quot;Test Item 1\\&quot;),\\n  Id: common.PtrString(\\&quot;item1\\&quot;),\\n  TaxAmount: common.PtrInt64(0),\\n  AmountIncludingTax: common.PtrInt64(5000),\\n}\\n\\nlineItem2 := checkout.LineItem{\\n  Quantity: common.PtrInt64(1),\\n  TaxPercentage: common.PtrInt64(0),\\n  AmountExcludingTax: common.PtrInt64(10000),\\n  Description: common.PtrString(\\&quot;Test Item 2\\&quot;),\\n  Id: common.PtrString(\\&quot;item2\\&quot;),\\n  TaxAmount: common.PtrInt64(0),\\n  AmountIncludingTax: common.PtrInt64(10000),\\n}\\n\\nname := checkout.Name{\\n  FirstName: \\&quot;Testperson-fr\\&quot;,\\n  LastName: \\&quot;Approved\\&quot;,\\n}\\n\\ndeliveryAddress := checkout.DeliveryAddress{\\n  Country: \\&quot;FR\\&quot;,\\n  StateOrProvince: common.PtrString(\\&quot;\\&quot;),\\n  City: \\&quot;UGINE\\&quot;,\\n  HouseNumberOrName: \\&quot;0\\&quot;,\\n  Street: \\&quot;461 Rue du Centenaire\\&quot;,\\n  PostalCode: \\&quot;73400\\&quot;,\\n}\\n\\npaymentDetails := checkout.PaymentDetails{\\n  Type: common.PtrString(\\&quot;facilypay_3x\\&quot;),\\n}\\n\\nbillingAddress := checkout.BillingAddress{\\n  Country: \\&quot;FR\\&quot;,\\n  City: \\&quot;UGINE\\&quot;,\\n  HouseNumberOrName: \\&quot;0\\&quot;,\\n  Street: \\&quot;461 Rue du Centenaire\\&quot;,\\n  PostalCode: \\&quot;73400\\&quot;,\\n}\\n\\npaymentRequest := checkout.PaymentRequest{\\n  Amount: amount,\\n  TelephoneNumber: common.PtrString(\\&quot;+33 1 76 35 07 90\\&quot;),\\n  DateOfBirth:  func() *time.Time { t, _ := time.Parse(time.RFC3339, \\&quot;1985-07-30\\&quot;); return &amp;t }(),\\n  ShopperEmail: common.PtrString(\\&quot;shopper@example.com\\&quot;),\\n  Reference: \\&quot;YOUR_ORDER_NUMBER\\&quot;,\\n  LineItems: []checkout.LineItem{\\n      lineItem1, lineItem2,\\n  },\\n  ShopperName: &amp;name,\\n  MerchantAccount: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  DeliveryAddress: &amp;deliveryAddress,\\n  CountryCode: common.PtrString(\\&quot;FR\\&quot;),\\n  PaymentMethod: checkout.PaymentDetailsAsCheckoutPaymentMethod(&amp;paymentDetails),\\n  BillingAddress: &amp;billingAddress,\\n  ShopperLocale: common.PtrString(\\&quot;fr_FR\\&quot;),\\n  ReturnUrl: \\&quot;https:\\\/\\\/your-company.example.com\\\/checkout?shopperOrder=12xy..\\&quot;,\\n  ShopperReference: common.PtrString(\\&quot;YOUR_UNIQUE_SHOPPER_ID\\&quot;),\\n}\\n\\n\\\/\\\/ Send the request\\nservice := client.Checkout()\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\&quot;UUID\\&quot;).PaymentRequest(paymentRequest)\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&quot;},{&quot;language&quot;:&quot;py&quot;,&quot;tabTitle&quot;:&quot;Python&quot;,&quot;content&quot;:&quot;# Adyen Python API Library v12.5.1\\nimport Adyen\\n\\nadyen = Adyen.Adyen()\\nadyen.client.xapikey = \\&quot;ADYEN_API_KEY\\&quot;\\n# For the live environment, additionally include your liveEndpointUrlPrefix.\\nadyen.client.platform = \\&quot;test\\&quot; # The environment to use library in.\\n\\n# Create the request object(s)\\njson_request = {\\n  \\&quot;merchantAccount\\&quot;: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  \\&quot;reference\\&quot;: \\&quot;YOUR_ORDER_NUMBER\\&quot;,\\n  \\&quot;countryCode\\&quot;: \\&quot;FR\\&quot;,\\n  \\&quot;amount\\&quot;: {\\n    \\&quot;currency\\&quot;: \\&quot;EUR\\&quot;,\\n    \\&quot;value\\&quot;: 15000\\n  },\\n  \\&quot;paymentMethod\\&quot;: {\\n    \\&quot;type\\&quot;: \\&quot;facilypay_3x\\&quot;\\n  },\\n  \\&quot;billingAddress\\&quot;: {\\n    \\&quot;city\\&quot;: \\&quot;UGINE\\&quot;,\\n    \\&quot;country\\&quot;: \\&quot;FR\\&quot;,\\n    \\&quot;houseNumberOrName\\&quot;: \\&quot;0\\&quot;,\\n    \\&quot;postalCode\\&quot;: \\&quot;73400\\&quot;,\\n    \\&quot;street\\&quot;: \\&quot;461 Rue du Centenaire\\&quot;\\n  },\\n  \\&quot;deliveryAddress\\&quot;: {\\n    \\&quot;city\\&quot;: \\&quot;UGINE\\&quot;,\\n    \\&quot;country\\&quot;: \\&quot;FR\\&quot;,\\n    \\&quot;houseNumberOrName\\&quot;: \\&quot;0\\&quot;,\\n    \\&quot;postalCode\\&quot;: \\&quot;73400\\&quot;,\\n    \\&quot;stateOrProvince\\&quot;: \\&quot;\\&quot;,\\n    \\&quot;street\\&quot;: \\&quot;461 Rue du Centenaire\\&quot;\\n  },\\n  \\&quot;shopperName\\&quot;: {\\n    \\&quot;firstName\\&quot;: \\&quot;Testperson-fr\\&quot;,\\n    \\&quot;lastName\\&quot;: \\&quot;Approved\\&quot;\\n  },\\n  \\&quot;telephoneNumber\\&quot;: \\&quot;+33 1 76 35 07 90\\&quot;,\\n  \\&quot;dateOfBirth\\&quot;: \\&quot;1985-07-30\\&quot;,\\n  \\&quot;shopperEmail\\&quot;: \\&quot;shopper@example.com\\&quot;,\\n  \\&quot;shopperLocale\\&quot;: \\&quot;fr_FR\\&quot;,\\n  \\&quot;lineItems\\&quot;: [ {\\n    \\&quot;taxPercentage\\&quot;: 0,\\n    \\&quot;id\\&quot;: \\&quot;item1\\&quot;,\\n    \\&quot;taxAmount\\&quot;: 0,\\n    \\&quot;description\\&quot;: \\&quot;Test Item 1\\&quot;,\\n    \\&quot;amountIncludingTax\\&quot;: 5000,\\n    \\&quot;quantity\\&quot;: 1,\\n    \\&quot;amountExcludingTax\\&quot;: 5000\\n  }, {\\n    \\&quot;taxPercentage\\&quot;: 0,\\n    \\&quot;id\\&quot;: \\&quot;item2\\&quot;,\\n    \\&quot;taxAmount\\&quot;: 0,\\n    \\&quot;description\\&quot;: \\&quot;Test Item 2\\&quot;,\\n    \\&quot;amountIncludingTax\\&quot;: 10000,\\n    \\&quot;quantity\\&quot;: 1,\\n    \\&quot;amountExcludingTax\\&quot;: 10000\\n  } ],\\n  \\&quot;shopperReference\\&quot;: \\&quot;YOUR_UNIQUE_SHOPPER_ID\\&quot;,\\n  \\&quot;returnUrl\\&quot;: \\&quot;https:\\\/\\\/your-company.example.com\\\/checkout?shopperOrder=12xy..\\&quot;\\n}\\n\\n# Send the request\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\&quot;UUID\\&quot;)&quot;},{&quot;language&quot;:&quot;rb&quot;,&quot;tabTitle&quot;:&quot;Ruby&quot;,&quot;content&quot;:&quot;# Adyen Ruby API Library v9.5.1\\nrequire \\&quot;adyen-ruby-api-library\\&quot;\\n\\nadyen = Adyen::Client.new\\nadyen.api_key = 'ADYEN_API_KEY'\\n# For the live environment, additionally include your liveEndpointUrlPrefix.\\nadyen.env = :test # Set to \\&quot;live\\&quot; for live environment\\n\\n# Create the request object(s)\\nrequest_body = {\\n  :merchantAccount =&gt; 'ADYEN_MERCHANT_ACCOUNT',\\n  :reference =&gt; 'YOUR_ORDER_NUMBER',\\n  :countryCode =&gt; 'FR',\\n  :amount =&gt; {\\n    :currency =&gt; 'EUR',\\n    :value =&gt; 15000\\n  },\\n  :paymentMethod =&gt; {\\n    :type =&gt; 'facilypay_3x'\\n  },\\n  :billingAddress =&gt; {\\n    :city =&gt; 'UGINE',\\n    :country =&gt; 'FR',\\n    :houseNumberOrName =&gt; '0',\\n    :postalCode =&gt; '73400',\\n    :street =&gt; '461 Rue du Centenaire'\\n  },\\n  :deliveryAddress =&gt; {\\n    :city =&gt; 'UGINE',\\n    :country =&gt; 'FR',\\n    :houseNumberOrName =&gt; '0',\\n    :postalCode =&gt; '73400',\\n    :stateOrProvince =&gt; '',\\n    :street =&gt; '461 Rue du Centenaire'\\n  },\\n  :shopperName =&gt; {\\n    :firstName =&gt; 'Testperson-fr',\\n    :lastName =&gt; 'Approved'\\n  },\\n  :telephoneNumber =&gt; '+33 1 76 35 07 90',\\n  :dateOfBirth =&gt; '1985-07-30',\\n  :shopperEmail =&gt; 'shopper@example.com',\\n  :shopperLocale =&gt; 'fr_FR',\\n  :lineItems =&gt; [ {\\n    :taxPercentage =&gt; 0,\\n    :id =&gt; 'item1',\\n    :taxAmount =&gt; 0,\\n    :description =&gt; 'Test Item 1',\\n    :amountIncludingTax =&gt; 5000,\\n    :quantity =&gt; 1,\\n    :amountExcludingTax =&gt; 5000\\n  }, {\\n    :taxPercentage =&gt; 0,\\n    :id =&gt; 'item2',\\n    :taxAmount =&gt; 0,\\n    :description =&gt; 'Test Item 2',\\n    :amountIncludingTax =&gt; 10000,\\n    :quantity =&gt; 1,\\n    :amountExcludingTax =&gt; 10000\\n  } ],\\n  :shopperReference =&gt; 'YOUR_UNIQUE_SHOPPER_ID',\\n  :returnUrl =&gt; 'https:\\\/\\\/your-company.example.com\\\/checkout?shopperOrder=12xy..'\\n}\\n\\n# Send the request\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { 'Idempotency-Key' =&gt; 'UUID' })&quot;},{&quot;language&quot;:&quot;ts&quot;,&quot;tabTitle&quot;:&quot;NodeJS (TypeScript)&quot;,&quot;content&quot;:&quot;\\\/\\\/ Adyen Node API Library v18.0.0\\n\\\/\\\/ Require the parts of the module you want to use\\nimport { Client, CheckoutAPI, Types } from \\&quot;@adyen\\\/api-library\\&quot;;\\n\\\/\\\/ Initialize the client object\\n\\\/\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\nconst client = new Client({apiKey: \\&quot;ADYEN_API_KEY\\&quot;, environment: \\&quot;TEST\\&quot;});\\n\\n\\\/\\\/ Create the request object(s)\\nconst amount: Types.checkout.Amount = {\\n  currency: \\&quot;EUR\\&quot;,\\n  value: 15000\\n};\\n\\nconst lineItem1: Types.checkout.LineItem = {\\n  quantity: 1,\\n  taxPercentage: 0,\\n  amountExcludingTax: 5000,\\n  description: \\&quot;Test Item 1\\&quot;,\\n  id: \\&quot;item1\\&quot;,\\n  taxAmount: 0,\\n  amountIncludingTax: 5000\\n};\\n\\nconst lineItem2: Types.checkout.LineItem = {\\n  quantity: 1,\\n  taxPercentage: 0,\\n  amountExcludingTax: 10000,\\n  description: \\&quot;Test Item 2\\&quot;,\\n  id: \\&quot;item2\\&quot;,\\n  taxAmount: 0,\\n  amountIncludingTax: 10000\\n};\\n\\nconst name: Types.checkout.Name = {\\n  firstName: \\&quot;Testperson-fr\\&quot;,\\n  lastName: \\&quot;Approved\\&quot;\\n};\\n\\nconst deliveryAddress: Types.checkout.DeliveryAddress = {\\n  country: \\&quot;FR\\&quot;,\\n  stateOrProvince: \\&quot;\\&quot;,\\n  city: \\&quot;UGINE\\&quot;,\\n  houseNumberOrName: \\&quot;0\\&quot;,\\n  street: \\&quot;461 Rue du Centenaire\\&quot;,\\n  postalCode: \\&quot;73400\\&quot;\\n};\\n\\nconst paymentDetails: Types.checkout.PaymentDetails = {\\n  type: Types.checkout.PaymentDetails.TypeEnum.Facilypay3x\\n};\\n\\nconst billingAddress: Types.checkout.BillingAddress = {\\n  country: \\&quot;FR\\&quot;,\\n  city: \\&quot;UGINE\\&quot;,\\n  houseNumberOrName: \\&quot;0\\&quot;,\\n  street: \\&quot;461 Rue du Centenaire\\&quot;,\\n  postalCode: \\&quot;73400\\&quot;\\n};\\n\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\n  amount: amount,\\n  telephoneNumber: \\&quot;+33 1 76 35 07 90\\&quot;,\\n  dateOfBirth: new Date(\\&quot;1985-07-30\\&quot;),\\n  shopperEmail: \\&quot;shopper@example.com\\&quot;,\\n  reference: \\&quot;YOUR_ORDER_NUMBER\\&quot;,\\n  lineItems: [lineItem1, lineItem2],\\n  shopperName: name,\\n  merchantAccount: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  deliveryAddress: deliveryAddress,\\n  countryCode: \\&quot;FR\\&quot;,\\n  paymentMethod: paymentDetails,\\n  billingAddress: billingAddress,\\n  shopperLocale: \\&quot;fr_FR\\&quot;,\\n  returnUrl: \\&quot;https:\\\/\\\/your-company.example.com\\\/checkout?shopperOrder=12xy..\\&quot;,\\n  shopperReference: \\&quot;YOUR_UNIQUE_SHOPPER_ID\\&quot;\\n};\\n\\n\\\/\\\/ Send the request\\nconst checkoutAPI = new CheckoutAPI(client);\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\&quot;UUID\\&quot; });&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<p>In the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/payments<\/a> response, check the <code>action<\/code> object for the information that you must use to redirect the shopper.<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'\/payments response'\" :id=\"''\" :code-data='[{\"language\":\"json\",\"tabTitle\":\"\",\"content\":\"{\\n  \\\"resultCode\\\":\\\"RedirectShopper\\\",\\n  \\\"action\\\":{\\n    \\\"paymentMethodType\\\":\\\"facilypay_3x\\\",\\n    \\\"method\\\":\\\"GET\\\",\\n    \\\"url\\\":\\\"https:\\\/\\\/checkoutshopper-test.adyen.com\\\/checkoutshopper\\\/checkoutPaymentRedirect?redirectData=...\\\",\\n    \\\"type\\\":\\\"redirect\\\"\\n  }\\n}\"}]' :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<h2 id=\"handle-the-redirect\">Handle the redirect<\/h2>\n<ol>\n<li>\n<p>To complete the payment, redirect the shopper to the <code>action.url<\/code> returned in the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/payments<\/a> response, taking into account the following recommendations:<\/p>\n<ul>\n<li>\n<p><strong>When using the HTTP GET method:<\/strong><br \/>\nFor security reasons, when showing the redirect in the app, we recommend that you use <a href=\"https:\/\/developer.apple.com\/documentation\/safariservices\/sfsafariviewcontroller\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">SFSafariViewController<\/a> for iOS or <a href=\"https:\/\/developer.chrome.com\/multidevice\/android\/customtabs\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Chrome Custom Tabs<\/a> for Android, instead of WebView objects. Also refer to the <a href=\"https:\/\/developer.android.com\/topic\/security\/best-practices#webview\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">security best practices<\/a> for WebView.<\/p>\n<\/li>\n<li>\n<p><strong>Redirection for mobile integrations:<\/strong><br \/>\nFor mobile integrations, we strongly recommended that you redirect the shopper to the default browser of their device. Redirecting to the default browser ensures the best compatibility, handling of multi-factor authentication, app-to-app redirection, and error handling.<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p>After the shopper is redirected back to your website, check the payment result by making a POST  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments\/details\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/payments\/details<\/a> request, specifying:<\/p>\n<ul>\n<li><code>details<\/code>: object that contains the URL-decoded <code>redirectResult<\/code> returned when the shopper was redirected back to your site.<\/li>\n<\/ul>\n<div data-component-wrapper=\"code-sample\">\n<code-sample :title=\"'\/payments\/details request'\" :id=\"''\" :code-data=\"[{&quot;language&quot;:&quot;bash&quot;,&quot;tabTitle&quot;:&quot;&quot;,&quot;content&quot;:&quot;curl https:\\\/\\\/checkout-test.adyen.com\\\/v72\\\/payments\\\/details \\\\\\n-H 'x-api-key: ADYEN_API_KEY' \\\\\\n-H 'content-type: application\\\/json' \\\\\\n-d '{\\n   \\&quot;details\\&quot;: {\\n      \\&quot;redirectResult\\&quot;: \\&quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\&quot;\\n   }\\n}'&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<\/li>\n<li>\n<p>In the response note the following:<\/p>\n<ul>\n<li><code>resultCode<\/code>: use this to present the result to your shopper.<\/li>\n<li><code>pspReference<\/code>: our unique identifier for the transaction.<\/li>\n<\/ul>\n<div data-component-wrapper=\"code-sample\">\n<code-sample :title=\"'\/payments\/details response'\" :id=\"''\" :code-data='[{\"language\":\"json\",\"tabTitle\":\"\",\"content\":\"{\\n   \\\"resultCode\\\": \\\"Authorised\\\",\\n   \\\"pspReference\\\": \\\"V4HZ4RBFJGXXGN82\\\"\\n}\"}]' :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<\/li>\n<\/ol>\n<p>After you have checked the payment result, use the\u00a0<code>resultCode<\/code> in the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments\/details\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/payments\/details<\/a> response to <a href=\"#present-the-payment-result\">present the payment result<\/a> to your shopper.<\/p>\n<h2>Present the payment result<\/h2>\n<p>Use the\u00a0<code>resultCode<\/code>\u00a0from the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments\/details\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/payments\/details<\/a> response to present the payment result to your shopper. The <code>resultCode<\/code> values you can receive for Oney are:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">resultCode<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<th style=\"text-align: left;\">Action to take<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><strong>Authorised<\/strong><\/td>\n<td style=\"text-align: left;\">The payment was successful.<\/td>\n<td style=\"text-align: left;\">Inform the shopper that the payment was successful. Ship the goods after you successfully <a href=\"#capture\">capture<\/a> the payment.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Cancelled<\/strong><\/td>\n<td style=\"text-align: left;\">The shopper cancelled the payment.<\/td>\n<td style=\"text-align: left;\">Ask the shopper whether they want to continue with the order, or ask them to select a different payment method.<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Refused<\/strong><\/td>\n<td style=\"text-align: left;\">The payment was refused by Oney, because it didn't pass their risk checks.<\/td>\n<td style=\"text-align: left;\">Ask the shopper to try the payment again using a different payment method.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Pending<\/strong> or <strong>Received<\/strong><br> See note <a href=\"#FRESdiff1\"><sup>1<\/sup><\/td>\n<td style=\"text-align: left;\">Oney has not confirmed the final status of the payment yet, for example because of suspected fraud. If the payment is not authorised within 24 hours, it is automatically cancelled.<\/td>\n<td style=\"text-align: left;\">Inform the shopper that you have received their order, and are waiting for the payment to be completed. <br> To know the final result of the payment, wait for the <a href=\"\/pt\/development-resources\/webhooks\">AUTHORISATION webhook<\/a>.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><a id=\"FRESdiff1\"><\/a> <sup>1<\/sup> Pending or received is only applicable for Oney payments with <code>countryCode<\/code> <strong>FR<\/strong>. Payments with <code>countryCode<\/code> <strong>ES<\/strong> are accepted or rejected immediately.<\/p>\n<h2 id=\"capture\">Capture the payment<\/h2>\n<div class=\"notices blue\">\n<p>Make sure that the payment is captured successfully before you ship the goods.<\/p>\n<\/div>\n<p>Depending on your <a href=\"\/pt\/online-payments\/capture\">capture<\/a> settings, Oney payments are captured manually or automatically, with or without a delay.<\/p>\n<p>If a payment is captured after more than six days, the payment authorization expires and the payment must be authorised again. <\/p>\n<h2 id=\"refund\">Refund the payment<\/h2>\n<p>If\u00a0a Oney payment has not yet been captured, you can\u00a0<a href=\"\/pt\/online-payments\/cancel\">cancel<\/a> it.<\/p>\n<p>If the payment has already been captured and you want to return the funds to the shopper, you need to\u00a0<a href=\"\/pt\/online-payments\/refund\">refund<\/a>\u00a0it.<\/p>\n<div class=\"notices green\">\n<p>The minimum refund amount is EUR 1. You can refund payments until 13 months after they have been captured.<\/p>\n<\/div>\n<h3 id=\"partial-refunds\">Partial refunds<\/h3>\n<p>To <a href=\"\/pt\/online-payments\/refund\">partially refund<\/a> a Oney payment, specify in your call to the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments\/(paymentPspReference)\/refunds\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/payments\/{paymentPspReference}\/refunds<\/a> endpoint:<\/p>\n<ul>\n<li><code>modificationAmount<\/code>: The amount to be refunded to the shopper.<\/li>\n<\/ul>\n<pre><code class=\"language-json\">{\n   \"merchantAccount\":\"YOUR_MERCHANT_ACCOUNT\",\n   \"modificationAmount\":{\n      \"currency\":\"EUR\",\n      \"value\":400\n   },\n   \"originalReference\":\"8825408195409505\"\n}<\/code><\/pre>\n<p>You will receive a  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments\/(paymentPspReference)\/refunds\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/payments\/{paymentPspReference}\/refunds<\/a> response containing a\u00a0<code>pspReference<\/code>\u00a0associated with this request. Once we have processed your request, you will also receive a REFUND webhook. For more information, refer to\u00a0<a href=\"\/pt\/online-payments\/refund\">Refund<\/a>.<\/p>\n<h2 id=\"test-and-go-live\">Test and go live<\/h2>\n<p>Before accepting live Oney payments, test your integration using the following test details:<\/p>\n<h3>France<\/h3>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Test card number<\/th>\n<th style=\"text-align: left;\">Expiry date<\/th>\n<th style=\"text-align: left;\">CVV<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\">4970 1015 1882 0000<\/td>\n<td style=\"text-align: left;\">Any date within 3 years from now.<\/td>\n<td style=\"text-align: left;\">Any value.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">4970 1030 6015 0000<\/td>\n<td style=\"text-align: left;\">Any date within 3 years from now.<\/td>\n<td style=\"text-align: left;\">Any value.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">4970 1027 3124 0000<\/td>\n<td style=\"text-align: left;\">Any date within 3 years from now.<\/td>\n<td style=\"text-align: left;\">Any value.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">4970 1022 9571 0000<\/td>\n<td style=\"text-align: left;\">Any date within 3 years from now.<\/td>\n<td style=\"text-align: left;\">Any value.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">4970 1093 1788 0000<\/td>\n<td style=\"text-align: left;\">Any date within 3 years from now.<\/td>\n<td style=\"text-align: left;\">Any value.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">4970 1017 0783 0000<\/td>\n<td style=\"text-align: left;\">Any date within 3 years from now.<\/td>\n<td style=\"text-align: left;\">Any value.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">4970 1090 7275 0000<\/td>\n<td style=\"text-align: left;\">Any date within 3 years from now.<\/td>\n<td style=\"text-align: left;\">Any value.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">4970 1084 5160 0000<\/td>\n<td style=\"text-align: left;\">Any date within 3 years from now.<\/td>\n<td style=\"text-align: left;\">Any value.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>You can test different responses by changing the amount to be paid:<\/p>\n<ul>\n<li><span translate=\"no\"><strong>Authorised<\/strong><\/span>: between EUR 150.00 and EUR 999.99<\/li>\n<li><span translate=\"no\"><strong>Pending<\/strong><\/span>: between EUR 1000.00 and EUR 1499.99<\/li>\n<li><span translate=\"no\"><strong>Refused<\/strong><\/span>: between EUR 1500.00 and EUR 2000.00<\/li>\n<\/ul>\n<p>To test different responses when making payments in 10 or 12 installments, you need to include the following:<\/p>\n<ul>\n<li>\n<p><span translate=\"no\"><strong>Authorised<\/strong><\/span>:<\/p>\n<ul>\n<li>Shopper email: <span translate=\"no\"><strong>10X12X.OK.BDE@oney.fr<\/strong><\/span>.<\/li>\n<li>Under <span translate=\"no\"><strong>Compl\u00e9tez vos informations<\/strong><\/span>, include:\n<ul>\n<li>Vos revenus: <span translate=\"no\"><strong>3500\u20ac<\/strong><\/span><\/li>\n<li>Origine du revenu principal:  <span translate=\"no\"><strong>Salarie<\/strong><\/span><\/li>\n<li>Vos charges: <span translate=\"no\"><strong>500\u20ac<\/strong><\/span><\/li>\n<\/ul><\/li>\n<li>Under <span translate=\"no\"><strong>Signez votre contrat<\/strong><\/span>, include:\n<ul>\n<li>Phone number: use <span translate=\"no\"><strong>0666000000<\/strong><\/span> to bypass a digital signature, or a real phone number to receive the OTP SMS for digital signing.<\/li>\n<\/ul><\/li>\n<\/ul>\n<\/li>\n<li>\n<p><span translate=\"no\"><strong>Refused<\/strong><\/span>:<\/p>\n<ul>\n<li>Shopper email: <span translate=\"no\"><strong>10X12X.KO.BDE@oney.fr<\/strong><\/span>.<\/li>\n<li>In the <span translate=\"no\"><strong>Completez vos informations<\/strong><\/span> step, include:\n<ul>\n<li>Vos revenus: <span translate=\"no\"><strong>1000\u20ac<\/strong><\/span><\/li>\n<li>Origine du revenu principal: <span translate=\"no\"><strong>Autres<\/strong><\/span><\/li>\n<li>Vos charges: <span translate=\"no\"><strong>800\u20ac<\/strong><\/span><\/li>\n<\/ul><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div class=\"notices blue\">\n<p>To test the full Oney payment flow, contact our <a href=\"https:\/\/ca-test.adyen.com\/ca\/ca\/contactUs\/support.shtml?form=other\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Support Team<\/a>.<\/p>\n<\/div>\n<h3>Spain<\/h3>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Test card number<\/th>\n<th style=\"text-align: left;\">Expiry date<\/th>\n<th style=\"text-align: left;\">CVV<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\">5436 0310 3060 6378<\/td>\n<td style=\"text-align: left;\">01\/2099<\/td>\n<td style=\"text-align: left;\">257<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">5199 9923 1264 1465<\/td>\n<td style=\"text-align: left;\">01\/2099<\/td>\n<td style=\"text-align: left;\">010<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">2223 0000 1047 9399<\/td>\n<td style=\"text-align: left;\">01\/2099<\/td>\n<td style=\"text-align: left;\">299<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">4543 4740 0224 9996<\/td>\n<td style=\"text-align: left;\">01\/2099<\/td>\n<td style=\"text-align: left;\">956<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>You can test the different responses by using the following information:<\/p>\n<ul>\n<li><span translate=\"no\"><strong>Authorised<\/strong><\/span>:\n<ul>\n<li>Shopper email: <span translate=\"no\"><strong>test_ok@oney.com<\/strong><\/span><\/li>\n<li>Correct CVV<\/li>\n<\/ul><\/li>\n<li><span translate=\"no\"><strong>Refused<\/strong><\/span>:\n<ul>\n<li>Shopper email: <span translate=\"no\"><strong>test_ko@oney.com<\/strong><\/span><\/li>\n<li>Incorrect CVV<\/li>\n<\/ul><\/li>\n<\/ul>\n<div class=\"notices blue\">\n<p>If you have issues accessing the Buy Now Pay Later subscription form when testing for Spain, or Italy, make sure that your IP address is from the EU region. For assistance, contact your network administrator. Alternatively, contact our <a href=\"https:\/\/ca-test.adyen.com\/ca\/ca\/contactUs\/support.shtml?form=other\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Support Team<\/a> to can provide a static IP address range to be allowlisted by Oney.<\/p>\n<\/div>\n<h3>Go live<\/h3>\n<p>Before you can accept live Oney payments, you need to <a href=\"\/pt\/payment-methods\/add-payment-methods\">submit a request for Oney 3x4x<\/a> in your <a href=\"https:\/\/ca-live.adyen.com\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">live Customer Area<\/a>.<\/p>\n<h2 id=\"see-also\">See also<\/h2>\n<div class=\"see-also-links output-inline\" id=\"see-also\">\n<ul><li><a href=\"\/online-payments\/api-only\"\n                        target=\"_self\"\n                        >\n                    API only integration\n                <\/a><\/li><li><a href=\"\/development-resources\/webhooks\"\n                        target=\"_self\"\n                        >\n                    Webhooks\n                <\/a><\/li><li><a href=\"https:\/\/docs.adyen.com\/api-explorer\/#\/CheckoutService\/latest\/overview\"\n                        target=\"_blank\"\n                         class=\"external\">\n                    API Explorer\n                <\/a><\/li><\/ul><\/div>\n","url":"https:\/\/docs.adyen.com\/pt\/payment-methods\/oney\/api-only","articleFields":{"description":"Add Oney to an existing API-only integration.","feedback_component":true,"parameters":{"integration":"API-only","platform":"Web","integration_guide_url":"build-your-integration\/advanced-flow?platform=Web&integration=API%20only","payment_method":"Oney","payment_method_type":"facilypay_3x","return_url":"https:\/\/your-company.example.com\/checkout?shopperOrder=12xy..","currency":"EUR","country_code":"FR","shopper_email":"shopper@example.com","telephone_number":"+33 1 76 35 07 90","date_of_birth":"1985-07-30"},"never_cache_twig":true,"last_edit_on":"16-01-2023 00:18","page_id":"b9ee4871-4dc7-434e-a55f-72542833805d","filters_component":false,"decision_tree":"[]"},"algolia":{"url":"https:\/\/docs.adyen.com\/pt\/payment-methods\/oney\/api-only","title":"Oney for API only","content":"Accept Oney payments using our APIs, and build your own payment form to have full control over the look and feel of your checkout page.\nWhen making a Oney payment:\n\nCollect shopper details and specify these in your payment request.\nProvide information about the purchased items by specifying lineItems in your payment request.\nMake sure that the payment is authorised and successfully captured before you ship the goods.\n\nRequirements\n\n\n\nRequirement\nDescription\n\n\n\n\nIntegration type\nMake sure that you have built an API-only integration. \n\n\nSetup steps\nBefore you begin, add Oney in your test Customer Area.\n\n\n\nBuild your payment form for Oney\nWhen making a Oney payment, collect the following shopper details:\n\n\n\nShopper detail\nRequired\nDescription\n\n\n\n\nFull name\n\nThe shopper's first name and last name.\n\n\nEmail\n\nThe shopper's email address. This is where Oney will send the invoice.\n\n\nDate of birth\n\nThe shopper's date of birth, if specified.\n\n\nTelephone number\n\nThe shopper's telephone number.\n\n\nBilling address\n\nThe address of the shopper associated with their payment details, to be included on the invoice.\n\n\nDelivery address\n\nThe postal address of the shopper where the items will be delivered.\n\n\n\nIf you are using the  \/paymentMethods endpoint to show the available payment methods to the shopper, specify the following in your request:\n\n countryCode&#58; FR, ES or IT\n amount.currency&#58; EUR\n amount.value&#58; The value of the payment.\n\nBased on the  countryCode, the  \/paymentMethods response contains:\n\n\n\npaymentMethod.type\nNumber of installments and country\/region\n\n\n\n\nfacilypay_3x\nfor 3 Oney installments in France (FR), Spain (ES) or Italy (IT).\n\n\nfacilypay_4x\nfor 4 Oney installments in France (FR), Spain (ES) or Italy (IT).\n\n\nfacilypay_6x\nfor 6 Oney installments in Spain (ES).\n\n\nfacilypay_10x\nfor 10 Oney installments in France (FR) or Spain (ES).\n\n\nfacilypay_12x\nfor 12 Oney installments in France (FR) or Spain (ES).\n\n\n\n\nWe provide logos for Oney which you can use on your payment form. For more information, refer to Downloading logos.\n\nMake a payment\nFrom your server, make a  \/payments request, specifying:\n\n\npaymentMethod.type:  The type of Oney payment the shopper wants to use.\u00a0Possible values:\n\nfacilypay_3x (FR, ES or IT)\nfacilypay_4x (FR, ES or IT)\nfacilypay_6x (ES only)\nfacilypay_10x (FR or ES)\nfacilypay_12x (FR or ES)\n\n\n\n shopperName&#58; The shopper's first and last name (required). Maximum length: 32 characters.\n\n\n shopperEmail&#58;\u00a0The shopper's email address. This is where Oney will send the payment instructions.\n\n\n dateOfBirth \n    \n        Optional\n    \n\n&#58;\u00a0The shopper's date of birth, if specified. The format must be YYYY-MM-DD.\n\n\n telephoneNumber&#58;\u00a0The shopper's mobile telephone number, using an international number format.\n\nFrance : +336 or +337 followed by eight digits\nSpain : +346 or +347 followed by eight digits\nItaly : +393 followed by eight digits\n\n\n\n billingAddress&#58;\u00a0The address of the shopper associated with their payment details.\n\n\u00a0billingAddress.postalCode must have five characters.\n\n\n\n deliveryAddress&#58; The postal address of the shopper where the items will be delivered.\n\ndeliveryAddress.postalCode must have five characters.\n\n\n\n countryCode&#58; The shopper's country\/region. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\n shopperLocale&#58;\u00a0A combination of language code and country code to specify the language used in\u00a0your checkout.\u00a0Refer to list of supported languages.\n\n\n lineItems&#58;\u00a0Price and product information about the purchased items.\n\nOney will only approve the payment if the total amount specified in lineItems matches the amount.value.\n\n\n\n shopperReference&#58; A unique reference to identify the shopper. Minimum length: three characters.\n\n\n returnUrl&#58;\u00a0The URL where the shopper will be redirected back to after completing the payment.  The URL can contain a maximum of 1024 characters and must include the protocol: http:\/\/ or https:\/\/. For example, https:\/\/your-company.example.com\/checkout\/. You can also include your own additional query parameters, for example, shopper ID or order reference number.\n\n\nadditionalData.oneydata.trustFlag \n    \n        Optional\n    \n\n: An optional field to flag trusted shoppers to Oney for their risk assessment. To use this feature Oney must enable the Oney trust setting on your account. Possible values: 2, 1, 0, -1, -2.\n\n\nadditionalData.oneydata.merchantPays \n    \n        Optional\n    \n\n: An optional field to override the default configuration. When we set up Oney for your merchant account, we also configure who pays the interest fees.\n\ntrue: You pay the interest fees for the shopper.\nfalse: The shopper pays the interest fees.\n\nFor example:\n\"additionalData\": {\n    \"oneydata.merchantPays\": true,\n    \"oneydata.trustFlag\": \"1\"\n}\n\n\nHere's an example of a payment of EUR&nbsp;150 split into three installments.\n\n    \n\nIn the  \/payments response, check the action object for the information that you must use to redirect the shopper.\n\n    \n\nHandle the redirect\n\n\nTo complete the payment, redirect the shopper to the action.url returned in the  \/payments response, taking into account the following recommendations:\n\n\nWhen using the HTTP GET method:\nFor security reasons, when showing the redirect in the app, we recommend that you use SFSafariViewController for iOS or Chrome Custom Tabs for Android, instead of WebView objects. Also refer to the security best practices for WebView.\n\n\nRedirection for mobile integrations:\nFor mobile integrations, we strongly recommended that you redirect the shopper to the default browser of their device. Redirecting to the default browser ensures the best compatibility, handling of multi-factor authentication, app-to-app redirection, and error handling.\n\n\n\n\nAfter the shopper is redirected back to your website, check the payment result by making a POST  \/payments\/details request, specifying:\n\ndetails: object that contains the URL-decoded redirectResult returned when the shopper was redirected back to your site.\n\n\n\n\n\n\nIn the response note the following:\n\nresultCode: use this to present the result to your shopper.\npspReference: our unique identifier for the transaction.\n\n\n\n\n\n\nAfter you have checked the payment result, use the\u00a0resultCode in the  \/payments\/details response to present the payment result to your shopper.\nPresent the payment result\nUse the\u00a0resultCode\u00a0from the  \/payments\/details response to present the payment result to your shopper. The resultCode values you can receive for Oney are:\n\n\n\nresultCode\nDescription\nAction to take\n\n\n\n\nAuthorised\nThe payment was successful.\nInform the shopper that the payment was successful. Ship the goods after you successfully capture the payment.\n\n\nCancelled\nThe shopper cancelled the payment.\nAsk the shopper whether they want to continue with the order, or ask them to select a different payment method.\n\n\n\nRefused\nThe payment was refused by Oney, because it didn't pass their risk checks.\nAsk the shopper to try the payment again using a different payment method.\n\n\nPending or Received See note 1\nOney has not confirmed the final status of the payment yet, for example because of suspected fraud. If the payment is not authorised within 24 hours, it is automatically cancelled.\nInform the shopper that you have received their order, and are waiting for the payment to be completed.  To know the final result of the payment, wait for the AUTHORISATION webhook.\n\n\n\n 1 Pending or received is only applicable for Oney payments with countryCode FR. Payments with countryCode ES are accepted or rejected immediately.\nCapture the payment\n\nMake sure that the payment is captured successfully before you ship the goods.\n\nDepending on your capture settings, Oney payments are captured manually or automatically, with or without a delay.\nIf a payment is captured after more than six days, the payment authorization expires and the payment must be authorised again. \nRefund the payment\nIf\u00a0a Oney payment has not yet been captured, you can\u00a0cancel it.\nIf the payment has already been captured and you want to return the funds to the shopper, you need to\u00a0refund\u00a0it.\n\nThe minimum refund amount is EUR 1. You can refund payments until 13 months after they have been captured.\n\nPartial refunds\nTo partially refund a Oney payment, specify in your call to the  \/payments\/{paymentPspReference}\/refunds endpoint:\n\nmodificationAmount: The amount to be refunded to the shopper.\n\n{\n   \"merchantAccount\":\"YOUR_MERCHANT_ACCOUNT\",\n   \"modificationAmount\":{\n      \"currency\":\"EUR\",\n      \"value\":400\n   },\n   \"originalReference\":\"8825408195409505\"\n}\nYou will receive a  \/payments\/{paymentPspReference}\/refunds response containing a\u00a0pspReference\u00a0associated with this request. Once we have processed your request, you will also receive a REFUND webhook. For more information, refer to\u00a0Refund.\nTest and go live\nBefore accepting live Oney payments, test your integration using the following test details:\nFrance\n\n\n\nTest card number\nExpiry date\nCVV\n\n\n\n\n4970 1015 1882 0000\nAny date within 3 years from now.\nAny value.\n\n\n4970 1030 6015 0000\nAny date within 3 years from now.\nAny value.\n\n\n4970 1027 3124 0000\nAny date within 3 years from now.\nAny value.\n\n\n4970 1022 9571 0000\nAny date within 3 years from now.\nAny value.\n\n\n4970 1093 1788 0000\nAny date within 3 years from now.\nAny value.\n\n\n4970 1017 0783 0000\nAny date within 3 years from now.\nAny value.\n\n\n4970 1090 7275 0000\nAny date within 3 years from now.\nAny value.\n\n\n4970 1084 5160 0000\nAny date within 3 years from now.\nAny value.\n\n\n\nYou can test different responses by changing the amount to be paid:\n\nAuthorised: between EUR 150.00 and EUR 999.99\nPending: between EUR 1000.00 and EUR 1499.99\nRefused: between EUR 1500.00 and EUR 2000.00\n\nTo test different responses when making payments in 10 or 12 installments, you need to include the following:\n\n\nAuthorised:\n\nShopper email: 10X12X.OK.BDE@oney.fr.\nUnder Compl\u00e9tez vos informations, include:\n\nVos revenus: 3500\u20ac\nOrigine du revenu principal:  Salarie\nVos charges: 500\u20ac\n\nUnder Signez votre contrat, include:\n\nPhone number: use 0666000000 to bypass a digital signature, or a real phone number to receive the OTP SMS for digital signing.\n\n\n\n\nRefused:\n\nShopper email: 10X12X.KO.BDE@oney.fr.\nIn the Completez vos informations step, include:\n\nVos revenus: 1000\u20ac\nOrigine du revenu principal: Autres\nVos charges: 800\u20ac\n\n\n\n\n\nTo test the full Oney payment flow, contact our Support Team.\n\nSpain\n\n\n\nTest card number\nExpiry date\nCVV\n\n\n\n\n5436 0310 3060 6378\n01\/2099\n257\n\n\n5199 9923 1264 1465\n01\/2099\n010\n\n\n2223 0000 1047 9399\n01\/2099\n299\n\n\n4543 4740 0224 9996\n01\/2099\n956\n\n\n\nYou can test the different responses by using the following information:\n\nAuthorised:\n\nShopper email: test_ok@oney.com\nCorrect CVV\n\nRefused:\n\nShopper email: test_ko@oney.com\nIncorrect CVV\n\n\n\nIf you have issues accessing the Buy Now Pay Later subscription form when testing for Spain, or Italy, make sure that your IP address is from the EU region. For assistance, contact your network administrator. Alternatively, contact our Support Team to can provide a static IP address range to be allowlisted by Oney.\n\nGo live\nBefore you can accept live Oney payments, you need to submit a request for Oney 3x4x in your live Customer Area.\nSee also\n\n\n                    API only integration\n                \n                    Webhooks\n                \n                    API Explorer\n                \n","type":"page","locale":"pt","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Payment methods","lvl2":"Oney","lvl3":"Oney for API only"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/pt","lvl1":"https:\/\/docs.adyen.com\/pt\/payment-methods","lvl2":"https:\/\/docs.adyen.com\/pt\/payment-methods\/oney","lvl3":"\/pt\/payment-methods\/oney\/api-only"},"levels":4,"category":"Payment method","category_color":"green","tags":[]},"articleFiles":{"payments.js":"<p alt=\"\">payments.js<\/p>"}}
