{"title":"Credit card installments","category":"default","creationDate":1671637260,"content":"<p>Paying in installments is a popular form of credit card purchase in Brazil, Mexico, and Japan.<\/p>\n<p>When a shopper makes a purchase in installments, the cost is split into multiple smaller payments, each referred to as an <em>installment<\/em>. These are charged to the shopper's credit card every 30 days until their purchase has been paid in full. This is popular with shoppers as\u00a0they receive goods or services immediately, but spread the cost of the purchase over multiple months.<\/p>\n<p>Making an installment purchase is similar to making a regular <a href=\"\/pt\/payment-methods\/cards\">card payment<\/a>. The first installment is charged to the shopper's credit card immediately. Following installments are charged automatically.<\/p>\n<div class=\"notices green\">\n<p>For <a href=\"\/pt\/payment-methods\">cards that support 3D Secure<\/a>, you can also accept installment payments with 3D Secure authentication.<\/p>\n<\/div>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: center;\">Country\/region<\/th>\n<th style=\"text-align: center;\">Currency<\/th>\n<th style=\"text-align: center;\">Payment type<\/th>\n<th style=\"text-align: center;\"><a href=\"\/pt\/online-payments\/refund\">Refunds<\/a><\/th>\n<th style=\"text-align: center;\"><a href=\"\/pt\/online-payments\/refund#refund-a-payment\">Partial refunds<\/a><\/th>\n<th style=\"text-align: center;\"><a href=\"\/pt\/online-payments\/capture\">Separate captures<\/a><\/th>\n<th style=\"text-align: center;\"><a href=\"\/pt\/online-payments\/capture#partial-capture\">Partial captures<\/a><\/th>\n<th style=\"text-align: center;\"><a href=\"\/pt\/risk-management\/chargeback-guidelines\">Chargebacks<\/a><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: center;\">Brazil<\/td>\n<td style=\"text-align: center;\"><span translate=\"no\"><strong>BRL<\/strong><\/span><\/td>\n<td style=\"text-align: center;\">Credit card<\/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: 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: 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: 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: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\">Mexico<\/td>\n<td style=\"text-align: center;\"><span translate=\"no\"><strong>MXN<\/strong><\/span><\/td>\n<td style=\"text-align: center;\">Credit card<\/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: 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: 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: 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: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\">Japan<\/td>\n<td style=\"text-align: center;\"><span translate=\"no\"><strong>JPY<\/strong><\/span><\/td>\n<td style=\"text-align: center;\">Credit card<\/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: 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: 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: 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: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\"installment-options\">Installment options in supported countries\/regions<\/h2>\n<p>The number of installments you can offer to the shopper depends on their country\/region:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Country\/region<\/th>\n<th style=\"text-align: left;\">Number of installments<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\">Brazil<\/td>\n<td style=\"text-align: left;\">Any number equal to or greater than 1, and less than 100.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Mexico<\/td>\n<td style=\"text-align: left;\">3, 6, 9, 12, or 18 monthly installments.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Japan<\/td>\n<td style=\"text-align: left;\">For regular installments, any number greater than 1, and less than 100.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Use these numbers for the <code>values<\/code> when you <a href=\"#sessions-request\">create a session<\/a>, <a href=\"#create-configuration-object\">create a configuration object<\/a> or <a href=\"#make-a-payment\">make a payment<\/a>.<\/p>\n<p>There are <span id=\"types\">three types of installment plans<\/span> for Japan:<\/p>\n<ul>\n<li>Regular: you decide how many installments are offered at checkout for the shopper to choose. The number of installments must be greater than 1 and less than 100.<\/li>\n<li>Revolving: a payment is split into an initial partial payment, and the remaining amount is split in installments. The cardholder must get a prior approval from the issuer.<\/li>\n<li>Bonus: this installment type coincides with an employee\u2019s summer and winter bonuses and is settled only twice a year - in the middle of July and in the middle of December.<\/li>\n<\/ul>\n<p>The type of installment plans that are supported depend on the card network:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: center;\">Installment Plan<\/th>\n<th style=\"text-align: center;\">Visa<\/th>\n<th style=\"text-align: center;\">Mastercard<\/th>\n<th style=\"text-align: center;\">JCB<\/th>\n<th style=\"text-align: center;\">Diners<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: center;\">Regular<\/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: 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: 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: center;\"><img title=\"-x-\" alt=\"-x-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/x.png\" \/><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\">Revolving<\/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: 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: 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: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\">Bonus (1 Time)<\/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: 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: 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: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Requirements<\/h2>\n<p>Make sure that you have either:<\/p>\n<ul>\n<li>Built a <a href=\"\/pt\/online-payments\/build-your-integration\/sessions-flow\/?platform=Web&amp;integration=Drop-in\">Web Drop-in<\/a> or <a href=\"\/pt\/online-payments\/build-your-integration\/sessions-flow?platform=Web&amp;integration=Components\">Components<\/a> integration. Must be <a href=\"\/pt\/online-payments\/release-notes?integration_type=web&amp;version=3.15.0\">v3.15.0<\/a> or later.<\/li>\n<li>Built <a href=\"\/pt\/payment-methods\/cards\/api-only\">your own UI for the card payment form<\/a>.<\/li>\n<\/ul>\n<h2>Web Drop-in or Components<\/h2>\n<p>When you show installment options, the shopper can choose the type and the number of installments in the payment form.<\/p>\n<p>To do so, either:<\/p>\n<ul>\n<li>If you use the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/sessions\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/sessions<\/a> endpoint, <a href=\"#sessions-request\">include the installment options object when you create a session<\/a>. Supported in <a href=\"\/pt\/online-payments\/release-notes?integration_type=web&amp;version=5.21.0\">v5.21.0<\/a> or later.<\/li>\n<li>If you use 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> endpoint, <a href=\"#create-configuration-object\">include installment options in the configuration object of the Drop-in or Card Component<\/a>. Supported in <a href=\"\/pt\/online-payments\/release-notes?integration_type=web&amp;version=3.15.0\">v3.15.0<\/a> or later.<\/li>\n<\/ul>\n<h3 id=\"sessions-request\">Include the installment options object when you create a session<\/h3>\n<p>In your  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/sessions\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/sessions<\/a> request, include the <code>installmentOptions<\/code> object, which has following fields:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Field<\/th>\n<th style=\"text-align: left;\">Required<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><code>values<\/code><\/td>\n<td style=\"text-align: left;\"><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;\">An array of the number of installments that the shopper can choose.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>preselectedValue<\/code><\/td>\n<td style=\"text-align: left;\"><\/td>\n<td style=\"text-align: left;\">The preselected number of installments in the payment form.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>plans<\/code><\/td>\n<td style=\"text-align: left;\"><\/td>\n<td style=\"text-align: left;\">An array that shows the <a href=\"#installment-options\">types of installment plans<\/a> that the shopper can choose. <br> Possible values: <span translate=\"no\"><strong>regular<\/strong><\/span> and <span translate=\"no\"><strong>revolving<\/strong><\/span>. <br> If not included, the default is <span translate=\"no\"><strong>regular<\/strong><\/span>.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>When you set installment options in the configuration object for cards, you can either :<\/p>\n<ul>\n<li><a href=\"#api-all-cards\">Set the same installment options for all cards<\/a>.<\/li>\n<li><a href=\"#api-different-brands\">Set installment options for different brands<\/a>.<\/li>\n<\/ul>\n<h4 id=\"api-all-cards\">Setting installment options for all cards<\/h4>\n<p>In this example, the API request configures the payment form to show the following installment options, for all card brands:<\/p>\n<ul>\n<li>The choice of 2, 3, or 5 monthly installments.<\/li>\n<li>The choice of a regular or revolving installment plan.<\/li>\n<\/ul>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'\/sessions request with installment options for all cards'\" :id=\"'8135993935'\" :code-data=\"[{&quot;language&quot;:&quot;bash&quot;,&quot;tabTitle&quot;:&quot;curl&quot;,&quot;content&quot;:&quot;curl https:\\\/\\\/checkout-test.adyen.com\\\/v69\\\/sessions \\\\\\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_REFERENCE\\&quot;,\\n    \\&quot;paymentMethod\\&quot;:{\\n      \\&quot;type\\&quot;:\\&quot;scheme\\&quot;,\\n      \\&quot;encryptedCardNumber\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n      \\&quot;encryptedExpiryMonth\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n      \\&quot;encryptedExpiryYear\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n      \\&quot;encryptedSecurityCode\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;\\n    },\\n    \\&quot;installmentOptions\\&quot;:{\\n        \\&quot;card\\&quot;:{\\n            \\&quot;values\\&quot;: [2, 3, 5],\\n            \\&quot;plans\\&quot;: [\\&quot;regular\\&quot;, \\&quot;revolving\\&quot;]\\n        }\\n    },\\n    \\&quot;amount\\&quot;:{\\n      \\&quot;currency\\&quot;:\\&quot;JPY\\&quot;,\\n      \\&quot;value\\&quot;: 3000\\n    }\\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;JPY\\&quot;)\\n  .value(3000L);\\n\\nCheckoutSessionInstallmentOption checkoutSessionInstallmentOption = new CheckoutSessionInstallmentOption()\\n  .plans(Arrays.asList(CheckoutSessionInstallmentOption.PlansEnum.REGULAR,\\nCheckoutSessionInstallmentOption.PlansEnum.REVOLVING))\\n  .values(Arrays.asList(2, 3, 5));\\n\\nCreateCheckoutSessionRequest createCheckoutSessionRequest = new CreateCheckoutSessionRequest()\\n  .reference(\\&quot;YOUR_REFERENCE\\&quot;)\\n  .amount(amount)\\n  .merchantAccount(\\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;)\\n  .installmentOptions(new HashMap&lt;String, CheckoutSessionInstallmentOption&gt;(Map.of(\\n    \\&quot;card\\&quot;, checkoutSessionInstallmentOption\\n  )));\\n\\n\\\/\\\/ Send the request\\nPaymentsApi service = new PaymentsApi(client);\\nCreateCheckoutSessionResponse response = service.sessions(createCheckoutSessionRequest, 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\\\\CheckoutSessionInstallmentOption;\\nuse Adyen\\\\Model\\\\Checkout\\\\CreateCheckoutSessionRequest;\\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;JPY\\&quot;)\\n  -&gt;setValue(3000);\\n\\n$checkoutSessionInstallmentOption = new CheckoutSessionInstallmentOption();\\n$checkoutSessionInstallmentOption\\n  -&gt;setPlans(array(\\&quot;regular\\&quot;, \\&quot;revolving\\&quot;))\\n  -&gt;setValues(array(2, 3, 5));\\n\\n$createCheckoutSessionRequest = new CreateCheckoutSessionRequest();\\n$createCheckoutSessionRequest\\n  -&gt;setReference(\\&quot;YOUR_REFERENCE\\&quot;)\\n  -&gt;setAmount($amount)\\n  -&gt;setMerchantAccount(\\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;)\\n  -&gt;setInstallmentOptions(\\n    array(\\n      \\&quot;card\\&quot; =&gt; $checkoutSessionInstallmentOption\\n    )\\n  );\\n\\n$requestOptions['idempotencyKey'] = 'UUID';\\n\\n\\\/\\\/ Send the request\\n$service = new PaymentsApi($client);\\n$response = $service-&gt;sessions($createCheckoutSessionRequest, $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;JPY\\&quot;,\\n  Value = 3000\\n};\\n\\nCheckoutSessionInstallmentOption checkoutSessionInstallmentOption = new CheckoutSessionInstallmentOption\\n{\\n  Plans = { CheckoutSessionInstallmentOption.PlansEnum.Regular,\\n    CheckoutSessionInstallmentOption.PlansEnum.Revolving },\\n  Values = { 2, 3, 5 }\\n};\\n\\nCreateCheckoutSessionRequest createCheckoutSessionRequest = new CreateCheckoutSessionRequest\\n{\\n  Reference = \\&quot;YOUR_REFERENCE\\&quot;,\\n  Amount = amount,\\n  MerchantAccount = \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  InstallmentOptions = new Dictionary&lt;string, CheckoutSessionInstallmentOption&gt;\\n  {\\n    { \\&quot;card\\&quot;, checkoutSessionInstallmentOption }\\n  }\\n};\\n\\n\\\/\\\/ Send the request\\nvar service = new PaymentsService(client);\\nvar response = service.Sessions(createCheckoutSessionRequest, 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 createCheckoutSessionRequest = {\\n  merchantAccount: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  reference: \\&quot;YOUR_REFERENCE\\&quot;,\\n  paymentMethod: {\\n    type: \\&quot;scheme\\&quot;,\\n    encryptedCardNumber: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    encryptedExpiryMonth: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    encryptedExpiryYear: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    encryptedSecurityCode: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;\\n  },\\n  installmentOptions: {\\n    card: {\\n      values: [ 2, 3, 5 ],\\n      plans: [ \\&quot;regular\\&quot;, \\&quot;revolving\\&quot; ]\\n    }\\n  },\\n  amount: {\\n    currency: \\&quot;JPY\\&quot;,\\n    value: 3000\\n  }\\n}\\n\\n\\\/\\\/ Send the request\\nconst checkoutAPI = new CheckoutAPI(client);\\nconst response = checkoutAPI.PaymentsApi.sessions(createCheckoutSessionRequest, { 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;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;JPY\\&quot;,\\n  Value: 3000,\\n}\\n\\ncheckoutSessionInstallmentOption := checkout.CheckoutSessionInstallmentOption{\\n  Plans: []string{\\n    \\&quot;regular\\&quot;, \\&quot;revolving\\&quot;,\\n  },\\n  Values: []int32{\\n    2, 3, 5,\\n  },\\n}\\n\\ncreateCheckoutSessionRequest := checkout.CreateCheckoutSessionRequest{\\n  Reference: \\&quot;YOUR_REFERENCE\\&quot;,\\n  Amount: amount,\\n  MerchantAccount: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  InstallmentOptions: &amp;map[string]checkout.CheckoutSessionInstallmentOption{\\n    \\&quot;card\\&quot;: checkoutSessionInstallmentOption,\\n  },\\n}\\n\\n\\\/\\\/ Send the request\\nservice := client.Checkout()\\nreq := service.PaymentsApi.SessionsInput().IdempotencyKey(\\&quot;UUID\\&quot;).CreateCheckoutSessionRequest(createCheckoutSessionRequest)\\nres, httpRes, err := service.PaymentsApi.Sessions(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_REFERENCE\\&quot;,\\n  \\&quot;paymentMethod\\&quot;: {\\n    \\&quot;type\\&quot;: \\&quot;scheme\\&quot;,\\n    \\&quot;encryptedCardNumber\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    \\&quot;encryptedExpiryMonth\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    \\&quot;encryptedExpiryYear\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    \\&quot;encryptedSecurityCode\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;\\n  },\\n  \\&quot;installmentOptions\\&quot;: {\\n    \\&quot;card\\&quot;: {\\n      \\&quot;values\\&quot;: [ 2, 3, 5 ],\\n      \\&quot;plans\\&quot;: [ \\&quot;regular\\&quot;, \\&quot;revolving\\&quot; ]\\n    }\\n  },\\n  \\&quot;amount\\&quot;: {\\n    \\&quot;currency\\&quot;: \\&quot;JPY\\&quot;,\\n    \\&quot;value\\&quot;: 3000\\n  }\\n}\\n\\n# Send the request\\nresult = adyen.checkout.payments_api.sessions(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_REFERENCE',\\n  :paymentMethod =&gt; {\\n    :type =&gt; 'scheme',\\n    :encryptedCardNumber =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...',\\n    :encryptedExpiryMonth =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...',\\n    :encryptedExpiryYear =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...',\\n    :encryptedSecurityCode =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...'\\n  },\\n  :installmentOptions =&gt; {\\n    :card =&gt; {\\n      :values =&gt; [ 2, 3, 5 ],\\n      :plans =&gt; [ 'regular', 'revolving' ]\\n    }\\n  },\\n  :amount =&gt; {\\n    :currency =&gt; 'JPY',\\n    :value =&gt; 3000\\n  }\\n}\\n\\n# Send the request\\nresult = adyen.checkout.payments_api.sessions(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;JPY\\&quot;,\\n  value: 3000\\n};\\n\\nconst checkoutSessionInstallmentOption: Types.checkout.CheckoutSessionInstallmentOption = {\\n  plans: [\\n    Types.checkout.CheckoutSessionInstallmentOption.PlansEnum.Regular,\\n    Types.checkout.CheckoutSessionInstallmentOption.PlansEnum.Revolving\\n  ],\\n  values: [2, 3, 5]\\n};\\n\\nconst createCheckoutSessionRequest: Types.checkout.CreateCheckoutSessionRequest = {\\n  reference: \\&quot;YOUR_REFERENCE\\&quot;,\\n  amount: amount,\\n  merchantAccount: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  installmentOptions: {\\n    \\&quot;card\\&quot;: checkoutSessionInstallmentOption\\n  }\\n};\\n\\n\\\/\\\/ Send the request\\nconst checkoutAPI = new CheckoutAPI(client);\\nconst response = checkoutAPI.PaymentsApi.sessions(createCheckoutSessionRequest, { idempotencyKey: \\&quot;UUID\\&quot; });&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<h4 id=\"api-different-brands\">Setting installment options for different card brands<\/h4>\n<p>In this example, the API request configures the payment form to show the following installment options:<\/p>\n<ul>\n<li>For Visa cards:\n<ul>\n<li>The choice of 2 or 4 monthly installments.<\/li>\n<li>A regular installment plan.<\/li>\n<\/ul><\/li>\n<li>For Mastercard cards:\n<ul>\n<li>The choice of 2, 3, or 5 monthly installments.<\/li>\n<li>The choice of a regular or revolving installment plan.<\/li>\n<\/ul><\/li>\n<\/ul>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'\/sessions request with installment options'\" :id=\"'9188604355'\" :code-data=\"[{&quot;language&quot;:&quot;bash&quot;,&quot;tabTitle&quot;:&quot;curl&quot;,&quot;content&quot;:&quot;curl https:\\\/\\\/checkout-test.adyen.com\\\/v69\\\/sessions \\\\\\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_REFERENCE\\&quot;,\\n    \\&quot;paymentMethod\\&quot;:{\\n      \\&quot;type\\&quot;:\\&quot;scheme\\&quot;,\\n      \\&quot;encryptedCardNumber\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n      \\&quot;encryptedExpiryMonth\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n      \\&quot;encryptedExpiryYear\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n      \\&quot;encryptedSecurityCode\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;\\n    },\\n    \\&quot;installmentOptions\\&quot;:{\\n        \\&quot;visa\\&quot;:{\\n            \\&quot;values\\&quot;: [2, 4]\\n        },\\n        \\&quot;mc\\&quot;: {\\n            \\&quot;values\\&quot;: [2, 3, 5],\\n            \\&quot;plans\\&quot;: [\\&quot;regular\\&quot;, \\&quot;revolving\\&quot;]\\n        }\\n    },\\n    \\&quot;amount\\&quot;:{\\n      \\&quot;currency\\&quot;:\\&quot;JPY\\&quot;,\\n      \\&quot;value\\&quot;: 3000\\n    }\\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;JPY\\&quot;)\\n  .value(3000L);\\n\\nCheckoutSessionInstallmentOption checkoutSessionInstallmentOption1 = new CheckoutSessionInstallmentOption()\\n  .values(Arrays.asList(2, 4));\\n\\nCheckoutSessionInstallmentOption checkoutSessionInstallmentOption2 = new CheckoutSessionInstallmentOption()\\n  .plans(Arrays.asList(CheckoutSessionInstallmentOption.PlansEnum.REGULAR,\\nCheckoutSessionInstallmentOption.PlansEnum.REVOLVING))\\n  .values(Arrays.asList(2, 3, 5));\\n\\nCreateCheckoutSessionRequest createCheckoutSessionRequest = new CreateCheckoutSessionRequest()\\n  .reference(\\&quot;YOUR_REFERENCE\\&quot;)\\n  .amount(amount)\\n  .merchantAccount(\\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;)\\n  .installmentOptions(new HashMap&lt;String, CheckoutSessionInstallmentOption&gt;(Map.of(\\n    \\&quot;visa\\&quot;, checkoutSessionInstallmentOption1,\\n    \\&quot;mc\\&quot;, checkoutSessionInstallmentOption2\\n  )));\\n\\n\\\/\\\/ Send the request\\nPaymentsApi service = new PaymentsApi(client);\\nCreateCheckoutSessionResponse response = service.sessions(createCheckoutSessionRequest, 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\\\\CheckoutSessionInstallmentOption;\\nuse Adyen\\\\Model\\\\Checkout\\\\CreateCheckoutSessionRequest;\\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;JPY\\&quot;)\\n  -&gt;setValue(3000);\\n\\n$checkoutSessionInstallmentOption1 = new CheckoutSessionInstallmentOption();\\n$checkoutSessionInstallmentOption1\\n  -&gt;setValues(array(2, 4));\\n\\n$checkoutSessionInstallmentOption2 = new CheckoutSessionInstallmentOption();\\n$checkoutSessionInstallmentOption2\\n  -&gt;setPlans(array(\\&quot;regular\\&quot;, \\&quot;revolving\\&quot;))\\n  -&gt;setValues(array(2, 3, 5));\\n\\n$createCheckoutSessionRequest = new CreateCheckoutSessionRequest();\\n$createCheckoutSessionRequest\\n  -&gt;setReference(\\&quot;YOUR_REFERENCE\\&quot;)\\n  -&gt;setAmount($amount)\\n  -&gt;setMerchantAccount(\\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;)\\n  -&gt;setInstallmentOptions(\\n    array(\\n      \\&quot;visa\\&quot; =&gt; $checkoutSessionInstallmentOption1,\\n      \\&quot;mc\\&quot; =&gt; $checkoutSessionInstallmentOption2\\n    )\\n  );\\n\\n$requestOptions['idempotencyKey'] = 'UUID';\\n\\n\\\/\\\/ Send the request\\n$service = new PaymentsApi($client);\\n$response = $service-&gt;sessions($createCheckoutSessionRequest, $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;JPY\\&quot;,\\n  Value = 3000\\n};\\n\\nCheckoutSessionInstallmentOption checkoutSessionInstallmentOption1 = new CheckoutSessionInstallmentOption\\n{\\n  Values = { 2, 4 }\\n};\\n\\nCheckoutSessionInstallmentOption checkoutSessionInstallmentOption2 = new CheckoutSessionInstallmentOption\\n{\\n  Plans = { CheckoutSessionInstallmentOption.PlansEnum.Regular,\\n    CheckoutSessionInstallmentOption.PlansEnum.Revolving },\\n  Values = { 2, 3, 5 }\\n};\\n\\nCreateCheckoutSessionRequest createCheckoutSessionRequest = new CreateCheckoutSessionRequest\\n{\\n  Reference = \\&quot;YOUR_REFERENCE\\&quot;,\\n  Amount = amount,\\n  MerchantAccount = \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  InstallmentOptions = new Dictionary&lt;string, CheckoutSessionInstallmentOption&gt;\\n  {\\n    { \\&quot;visa\\&quot;, checkoutSessionInstallmentOption1 },\\n    { \\&quot;mc\\&quot;, checkoutSessionInstallmentOption2 }\\n  }\\n};\\n\\n\\\/\\\/ Send the request\\nvar service = new PaymentsService(client);\\nvar response = service.Sessions(createCheckoutSessionRequest, 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 createCheckoutSessionRequest = {\\n  merchantAccount: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  reference: \\&quot;YOUR_REFERENCE\\&quot;,\\n  paymentMethod: {\\n    type: \\&quot;scheme\\&quot;,\\n    encryptedCardNumber: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    encryptedExpiryMonth: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    encryptedExpiryYear: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    encryptedSecurityCode: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;\\n  },\\n  installmentOptions: {\\n    visa: {\\n      values: [ 2, 4 ]\\n    },\\n    mc: {\\n      values: [ 2, 3, 5 ],\\n      plans: [ \\&quot;regular\\&quot;, \\&quot;revolving\\&quot; ]\\n    }\\n  },\\n  amount: {\\n    currency: \\&quot;JPY\\&quot;,\\n    value: 3000\\n  }\\n}\\n\\n\\\/\\\/ Send the request\\nconst checkoutAPI = new CheckoutAPI(client);\\nconst response = checkoutAPI.PaymentsApi.sessions(createCheckoutSessionRequest, { 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;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;JPY\\&quot;,\\n  Value: 3000,\\n}\\n\\ncheckoutSessionInstallmentOption1 := checkout.CheckoutSessionInstallmentOption{\\n  Values: []int32{\\n    2, 4,\\n  },\\n}\\n\\ncheckoutSessionInstallmentOption2 := checkout.CheckoutSessionInstallmentOption{\\n  Plans: []string{\\n    \\&quot;regular\\&quot;, \\&quot;revolving\\&quot;,\\n  },\\n  Values: []int32{\\n    2, 3, 5,\\n  },\\n}\\n\\ncreateCheckoutSessionRequest := checkout.CreateCheckoutSessionRequest{\\n  Reference: \\&quot;YOUR_REFERENCE\\&quot;,\\n  Amount: amount,\\n  MerchantAccount: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  InstallmentOptions: &amp;map[string]checkout.CheckoutSessionInstallmentOption{\\n    \\&quot;visa\\&quot;: checkoutSessionInstallmentOption1,\\n    \\&quot;mc\\&quot;: checkoutSessionInstallmentOption2,\\n  },\\n}\\n\\n\\\/\\\/ Send the request\\nservice := client.Checkout()\\nreq := service.PaymentsApi.SessionsInput().IdempotencyKey(\\&quot;UUID\\&quot;).CreateCheckoutSessionRequest(createCheckoutSessionRequest)\\nres, httpRes, err := service.PaymentsApi.Sessions(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_REFERENCE\\&quot;,\\n  \\&quot;paymentMethod\\&quot;: {\\n    \\&quot;type\\&quot;: \\&quot;scheme\\&quot;,\\n    \\&quot;encryptedCardNumber\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    \\&quot;encryptedExpiryMonth\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    \\&quot;encryptedExpiryYear\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    \\&quot;encryptedSecurityCode\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;\\n  },\\n  \\&quot;installmentOptions\\&quot;: {\\n    \\&quot;visa\\&quot;: {\\n      \\&quot;values\\&quot;: [ 2, 4 ]\\n    },\\n    \\&quot;mc\\&quot;: {\\n      \\&quot;values\\&quot;: [ 2, 3, 5 ],\\n      \\&quot;plans\\&quot;: [ \\&quot;regular\\&quot;, \\&quot;revolving\\&quot; ]\\n    }\\n  },\\n  \\&quot;amount\\&quot;: {\\n    \\&quot;currency\\&quot;: \\&quot;JPY\\&quot;,\\n    \\&quot;value\\&quot;: 3000\\n  }\\n}\\n\\n# Send the request\\nresult = adyen.checkout.payments_api.sessions(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_REFERENCE',\\n  :paymentMethod =&gt; {\\n    :type =&gt; 'scheme',\\n    :encryptedCardNumber =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...',\\n    :encryptedExpiryMonth =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...',\\n    :encryptedExpiryYear =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...',\\n    :encryptedSecurityCode =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...'\\n  },\\n  :installmentOptions =&gt; {\\n    :visa =&gt; {\\n      :values =&gt; [ 2, 4 ]\\n    },\\n    :mc =&gt; {\\n      :values =&gt; [ 2, 3, 5 ],\\n      :plans =&gt; [ 'regular', 'revolving' ]\\n    }\\n  },\\n  :amount =&gt; {\\n    :currency =&gt; 'JPY',\\n    :value =&gt; 3000\\n  }\\n}\\n\\n# Send the request\\nresult = adyen.checkout.payments_api.sessions(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;JPY\\&quot;,\\n  value: 3000\\n};\\n\\nconst checkoutSessionInstallmentOption1: Types.checkout.CheckoutSessionInstallmentOption = {\\n  values: [2, 4]\\n};\\n\\nconst checkoutSessionInstallmentOption2: Types.checkout.CheckoutSessionInstallmentOption = {\\n  plans: [\\n    Types.checkout.CheckoutSessionInstallmentOption.PlansEnum.Regular,\\n    Types.checkout.CheckoutSessionInstallmentOption.PlansEnum.Revolving\\n  ],\\n  values: [2, 3, 5]\\n};\\n\\nconst createCheckoutSessionRequest: Types.checkout.CreateCheckoutSessionRequest = {\\n  reference: \\&quot;YOUR_REFERENCE\\&quot;,\\n  amount: amount,\\n  merchantAccount: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  installmentOptions: {\\n    \\&quot;visa\\&quot;: checkoutSessionInstallmentOption1,\\n    \\&quot;mc\\&quot;: checkoutSessionInstallmentOption2\\n  }\\n};\\n\\n\\\/\\\/ Send the request\\nconst checkoutAPI = new CheckoutAPI(client);\\nconst response = checkoutAPI.PaymentsApi.sessions(createCheckoutSessionRequest, { idempotencyKey: \\&quot;UUID\\&quot; });&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<h3 id=\"create-configuration-object\">Create a configuration object for Drop-in or Card Component<\/h3>\n<p>When you set installment options in the configuration object for cards, you can either:<\/p>\n<ul>\n<li><a href=\"#all-cards\">Set the same installment options for all cards<\/a>.<\/li>\n<li><a href=\"#different-brands\">Set installment options for different brands<\/a>.<\/li>\n<\/ul>\n<h4 id=\"all-cards\">Setting installment options for all cards<\/h4>\n<pre><code class=\"language-js\">\/\/example configuration in the Drop-in object\n{\n ...\n paymentMethodsConfiguration: {\n    card: {\n      installmentOptions: {\n        card: {\n            \/\/ Shows 1, 2, and 3 as the numbers of monthly installments that the shopper can choose.\n            values: [1, 2, 3],\n            \/\/ Shows regular and revolving as plans that the shopper can choose.\n            plans: [ 'regular', 'revolving' ]\n        },\n      \/\/ Shows payment amount per installment.\n      showInstallmentAmounts: true\n    }\n ...\n}<\/code><\/pre>\n<h4 id=\"different-brands\">Setting installment options for different card brands<\/h4>\n<pre><code class=\"language-js\">\/\/example configuration in the Web Drop-in object\n{\n ...\n paymentMethodsConfiguration: {\n    card: {\n      installmentOptions: {\n        visa: {\n            \/\/ Shows 1, 2, and 3 as the numbers of monthly installments that the shopper can choose.\n            values: [1, 2, 3],\n            \/\/ Shows regular and revolving as plans shoppers can choose.\n            plans: [ 'regular', 'revolving' ]\n        },\n        mc: {\n            \/\/ Shows 1 and 2 as the numbers of monthly installments that the shopper can choose.\n            values: [1, 2],\n            \/\/ Shows regular and revolving as plans that the shopper can choose.\n            plans: [ 'regular', 'revolving' ]\n        }\n      },\n      \/\/ Shows payment amount per installment.\n      showInstallmentAmounts: true\n    }\n ...\n}<\/code><\/pre>\n<h2 id=\"make-a-payment\">Make a payment<\/h2>\n<p>If you built your own UI for the card payment form, send the installment field in the first payment request.<\/p>\n<h3 id=\"make-a-payment-brazil-mexico\">Brazil, and Mexico<\/h3>\n<p>To make an installment payment, additionally include in your  <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: \u00a0<\/p>\n<ul>\n<li><code>installments.value<\/code>: The number of monthly installments. Include a valid <a href=\"#installment-options\">number of installments<\/a> for the corresponding country\/region.<\/li>\n<\/ul>\n<div class=\"notices green\">\n<p>In Brazil, you can charge the shopper interest for paying in installments. To do this, add the interest to the <code>amount.value<\/code>.<\/p>\n<\/div>\n<p>The following example shows how to make a 120 Brazilian Real (BRL) purchase that will be paid in\u00a0<strong>6<\/strong>\u00a0installments of 20 BRL.<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Make a payment with installments in BRL'\" :id=\"'6260474502'\" :code-data=\"[{&quot;language&quot;:&quot;bash&quot;,&quot;tabTitle&quot;:&quot;curl&quot;,&quot;content&quot;:&quot;curl https:\\\/\\\/checkout-test.adyen.com\\\/v72\\\/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_REFERENCE\\&quot;,\\n    \\&quot;paymentMethod\\&quot;:{\\n      \\&quot;type\\&quot;:\\&quot;scheme\\&quot;,\\n      \\&quot;encryptedCardNumber\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n      \\&quot;encryptedExpiryMonth\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n      \\&quot;encryptedExpiryYear\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n      \\&quot;encryptedSecurityCode\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;\\n    },\\n    \\&quot;installments\\&quot;:{\\n      \\&quot;value\\&quot;: 6\\n    },\\n    \\&quot;amount\\&quot;:{\\n      \\&quot;currency\\&quot;:\\&quot;BRL\\&quot;,\\n      \\&quot;value\\&quot;:12000\\n    }\\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;BRL\\&quot;)\\n  .value(12000L);\\n\\nInstallments installments = new Installments()\\n  .value(6);\\n\\nCardDetails cardDetails = new CardDetails()\\n  .encryptedCardNumber(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;)\\n  .encryptedSecurityCode(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;)\\n  .encryptedExpiryYear(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;)\\n  .encryptedExpiryMonth(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;)\\n  .type(CardDetails.TypeEnum.SCHEME);\\n\\nPaymentRequest paymentRequest = new PaymentRequest()\\n  .reference(\\&quot;YOUR_REFERENCE\\&quot;)\\n  .amount(amount)\\n  .merchantAccount(\\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;)\\n  .installments(installments)\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails));\\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\\\\Installments;\\nuse Adyen\\\\Model\\\\Checkout\\\\CheckoutPaymentMethod;\\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;BRL\\&quot;)\\n  -&gt;setValue(12000);\\n\\n$installments = new Installments();\\n$installments\\n  -&gt;setValue(6);\\n\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\n$checkoutPaymentMethod\\n  -&gt;setEncryptedCardNumber(\\&quot;adyenjs_0_1_18\\\\$MT6ppy0FAMVMLH...\\&quot;)\\n  -&gt;setEncryptedSecurityCode(\\&quot;adyenjs_0_1_18\\\\$MT6ppy0FAMVMLH...\\&quot;)\\n  -&gt;setEncryptedExpiryYear(\\&quot;adyenjs_0_1_18\\\\$MT6ppy0FAMVMLH...\\&quot;)\\n  -&gt;setEncryptedExpiryMonth(\\&quot;adyenjs_0_1_18\\\\$MT6ppy0FAMVMLH...\\&quot;)\\n  -&gt;setType(\\&quot;scheme\\&quot;);\\n\\n$paymentRequest = new PaymentRequest();\\n$paymentRequest\\n  -&gt;setReference(\\&quot;YOUR_REFERENCE\\&quot;)\\n  -&gt;setAmount($amount)\\n  -&gt;setMerchantAccount(\\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;)\\n  -&gt;setInstallments($installments)\\n  -&gt;setPaymentMethod($checkoutPaymentMethod);\\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;BRL\\&quot;,\\n  Value = 12000\\n};\\n\\nInstallments installments = new Installments\\n{\\n  Value = 6\\n};\\n\\nCardDetails cardDetails = new CardDetails\\n{\\n  EncryptedCardNumber = \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  EncryptedSecurityCode = \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  EncryptedExpiryYear = \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  EncryptedExpiryMonth = \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  Type = CardDetails.TypeEnum.Scheme\\n};\\n\\nPaymentRequest paymentRequest = new PaymentRequest\\n{\\n  Reference = \\&quot;YOUR_REFERENCE\\&quot;,\\n  Amount = amount,\\n  MerchantAccount = \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  Installments = installments,\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails)\\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_REFERENCE\\&quot;,\\n  paymentMethod: {\\n    type: \\&quot;scheme\\&quot;,\\n    encryptedCardNumber: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    encryptedExpiryMonth: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    encryptedExpiryYear: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    encryptedSecurityCode: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;\\n  },\\n  installments: {\\n    value: 6\\n  },\\n  amount: {\\n    currency: \\&quot;BRL\\&quot;,\\n    value: 12000\\n  }\\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;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;BRL\\&quot;,\\n  Value: 12000,\\n}\\n\\ninstallments := checkout.Installments{\\n  Value: 6,\\n}\\n\\ncardDetails := checkout.CardDetails{\\n  EncryptedCardNumber: common.PtrString(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;),\\n  EncryptedSecurityCode: common.PtrString(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;),\\n  EncryptedExpiryYear: common.PtrString(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;),\\n  EncryptedExpiryMonth: common.PtrString(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;),\\n  Type: common.PtrString(\\&quot;scheme\\&quot;),\\n}\\n\\npaymentRequest := checkout.PaymentRequest{\\n  Reference: \\&quot;YOUR_REFERENCE\\&quot;,\\n  Amount: amount,\\n  MerchantAccount: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  Installments: &amp;installments,\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;cardDetails),\\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_REFERENCE\\&quot;,\\n  \\&quot;paymentMethod\\&quot;: {\\n    \\&quot;type\\&quot;: \\&quot;scheme\\&quot;,\\n    \\&quot;encryptedCardNumber\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    \\&quot;encryptedExpiryMonth\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    \\&quot;encryptedExpiryYear\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    \\&quot;encryptedSecurityCode\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;\\n  },\\n  \\&quot;installments\\&quot;: {\\n    \\&quot;value\\&quot;: 6\\n  },\\n  \\&quot;amount\\&quot;: {\\n    \\&quot;currency\\&quot;: \\&quot;BRL\\&quot;,\\n    \\&quot;value\\&quot;: 12000\\n  }\\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_REFERENCE',\\n  :paymentMethod =&gt; {\\n    :type =&gt; 'scheme',\\n    :encryptedCardNumber =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...',\\n    :encryptedExpiryMonth =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...',\\n    :encryptedExpiryYear =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...',\\n    :encryptedSecurityCode =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...'\\n  },\\n  :installments =&gt; {\\n    :value =&gt; 6\\n  },\\n  :amount =&gt; {\\n    :currency =&gt; 'BRL',\\n    :value =&gt; 12000\\n  }\\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;BRL\\&quot;,\\n  value: 12000\\n};\\n\\nconst installments: Types.checkout.Installments = {\\n  value: 6\\n};\\n\\nconst cardDetails: Types.checkout.CardDetails = {\\n  encryptedCardNumber: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  encryptedSecurityCode: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  encryptedExpiryYear: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  encryptedExpiryMonth: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\n};\\n\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\n  reference: \\&quot;YOUR_REFERENCE\\&quot;,\\n  amount: amount,\\n  merchantAccount: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  installments: installments,\\n  paymentMethod: cardDetails\\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>If the payment is successful, the first installment is immediately charged to the shopper's credit card. You receive 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> response and an <span translate=\"no\"><strong>AUTHORISATION<\/strong><\/span> webhook, same as regular credit card payments. Following installments will be charged automatically.<\/p>\n<div class=\"notices yellow\">\n<p>You will not receive webhooks for subsequent installment payments. You can track whether an installment payment is successful with the Settlement details report. For more information, refer to <a href=\"\/pt\/reporting\/settlement-reconciliation\/transaction-level\/reconcile-installment-payments#installment-reports\">Reconcile installment payments<\/a>.<\/p>\n<\/div>\n<h3 id=\"make-a-payment-japan\">Japan<\/h3>\n<p>Supported in Checkout API v64 or later.<\/p>\n<p>To make an installment payment, additionally include in your  <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: \u00a0<\/p>\n<ul>\n<li><code>installments.plan<\/code>: The type of plan. Set this to either <span translate=\"no\"><strong>regular<\/strong><\/span>, <span translate=\"no\"><strong>revolving<\/strong><\/span>, or <span translate=\"no\"><strong>bonus<\/strong><\/span>.<\/li>\n<li><code>installments.value<\/code>: The number of monthly installments.\n<ul>\n<li><span translate=\"no\"><strong>regular<\/strong><\/span> plan: this must be set to greater than 1 and less than 100.<\/li>\n<li><span translate=\"no\"><strong>revolving<\/strong><\/span> plan: this must be set to 1.<\/li>\n<li><span translate=\"no\"><strong>bonus<\/strong><\/span> plan: this must be set to 1.<\/li>\n<\/ul><\/li>\n<\/ul>\n<p>The following example shows how to make a 3000 Japanese Yen (JPY) purchase that will be paid in\u00a0<strong>10<\/strong>\u00a0installments of 300 JPY.<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Make a payment with installments in JPY'\" :id=\"'2162671905'\" :code-data=\"[{&quot;language&quot;:&quot;bash&quot;,&quot;tabTitle&quot;:&quot;curl&quot;,&quot;content&quot;:&quot;curl https:\\\/\\\/checkout-test.adyen.com\\\/v72\\\/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_REFERENCE\\&quot;,\\n    \\&quot;paymentMethod\\&quot;:{\\n      \\&quot;type\\&quot;:\\&quot;scheme\\&quot;,\\n      \\&quot;encryptedCardNumber\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n      \\&quot;encryptedExpiryMonth\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n      \\&quot;encryptedExpiryYear\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n      \\&quot;encryptedSecurityCode\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;\\n    },\\n    \\&quot;installments\\&quot;:{\\n      \\&quot;value\\&quot;: 10,\\n      \\&quot;plan\\&quot;:\\&quot;regular\\&quot;\\n    },\\n    \\&quot;amount\\&quot;:{\\n      \\&quot;currency\\&quot;:\\&quot;JPY\\&quot;,\\n      \\&quot;value\\&quot;: 3000\\n    }\\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;JPY\\&quot;)\\n  .value(3000L);\\n\\nInstallments installments = new Installments()\\n  .value(10)\\n  .plan(Installments.PlanEnum.REGULAR);\\n\\nCardDetails cardDetails = new CardDetails()\\n  .encryptedCardNumber(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;)\\n  .encryptedSecurityCode(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;)\\n  .encryptedExpiryYear(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;)\\n  .encryptedExpiryMonth(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;)\\n  .type(CardDetails.TypeEnum.SCHEME);\\n\\nPaymentRequest paymentRequest = new PaymentRequest()\\n  .reference(\\&quot;YOUR_REFERENCE\\&quot;)\\n  .amount(amount)\\n  .merchantAccount(\\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;)\\n  .installments(installments)\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails));\\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\\\\Installments;\\nuse Adyen\\\\Model\\\\Checkout\\\\CheckoutPaymentMethod;\\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;JPY\\&quot;)\\n  -&gt;setValue(3000);\\n\\n$installments = new Installments();\\n$installments\\n  -&gt;setValue(10)\\n  -&gt;setPlan(\\&quot;regular\\&quot;);\\n\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\n$checkoutPaymentMethod\\n  -&gt;setEncryptedCardNumber(\\&quot;adyenjs_0_1_18\\\\$MT6ppy0FAMVMLH...\\&quot;)\\n  -&gt;setEncryptedSecurityCode(\\&quot;adyenjs_0_1_18\\\\$MT6ppy0FAMVMLH...\\&quot;)\\n  -&gt;setEncryptedExpiryYear(\\&quot;adyenjs_0_1_18\\\\$MT6ppy0FAMVMLH...\\&quot;)\\n  -&gt;setEncryptedExpiryMonth(\\&quot;adyenjs_0_1_18\\\\$MT6ppy0FAMVMLH...\\&quot;)\\n  -&gt;setType(\\&quot;scheme\\&quot;);\\n\\n$paymentRequest = new PaymentRequest();\\n$paymentRequest\\n  -&gt;setReference(\\&quot;YOUR_REFERENCE\\&quot;)\\n  -&gt;setAmount($amount)\\n  -&gt;setMerchantAccount(\\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;)\\n  -&gt;setInstallments($installments)\\n  -&gt;setPaymentMethod($checkoutPaymentMethod);\\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;JPY\\&quot;,\\n  Value = 3000\\n};\\n\\nInstallments installments = new Installments\\n{\\n  Value = 10,\\n  Plan = Installments.PlanEnum.Regular\\n};\\n\\nCardDetails cardDetails = new CardDetails\\n{\\n  EncryptedCardNumber = \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  EncryptedSecurityCode = \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  EncryptedExpiryYear = \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  EncryptedExpiryMonth = \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  Type = CardDetails.TypeEnum.Scheme\\n};\\n\\nPaymentRequest paymentRequest = new PaymentRequest\\n{\\n  Reference = \\&quot;YOUR_REFERENCE\\&quot;,\\n  Amount = amount,\\n  MerchantAccount = \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  Installments = installments,\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails)\\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_REFERENCE\\&quot;,\\n  paymentMethod: {\\n    type: \\&quot;scheme\\&quot;,\\n    encryptedCardNumber: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    encryptedExpiryMonth: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    encryptedExpiryYear: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    encryptedSecurityCode: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;\\n  },\\n  installments: {\\n    value: 10,\\n    plan: \\&quot;regular\\&quot;\\n  },\\n  amount: {\\n    currency: \\&quot;JPY\\&quot;,\\n    value: 3000\\n  }\\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;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;JPY\\&quot;,\\n  Value: 3000,\\n}\\n\\ninstallments := checkout.Installments{\\n  Value: 10,\\n  Plan: common.PtrString(\\&quot;regular\\&quot;),\\n}\\n\\ncardDetails := checkout.CardDetails{\\n  EncryptedCardNumber: common.PtrString(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;),\\n  EncryptedSecurityCode: common.PtrString(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;),\\n  EncryptedExpiryYear: common.PtrString(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;),\\n  EncryptedExpiryMonth: common.PtrString(\\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;),\\n  Type: common.PtrString(\\&quot;scheme\\&quot;),\\n}\\n\\npaymentRequest := checkout.PaymentRequest{\\n  Reference: \\&quot;YOUR_REFERENCE\\&quot;,\\n  Amount: amount,\\n  MerchantAccount: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  Installments: &amp;installments,\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;cardDetails),\\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_REFERENCE\\&quot;,\\n  \\&quot;paymentMethod\\&quot;: {\\n    \\&quot;type\\&quot;: \\&quot;scheme\\&quot;,\\n    \\&quot;encryptedCardNumber\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    \\&quot;encryptedExpiryMonth\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    \\&quot;encryptedExpiryYear\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n    \\&quot;encryptedSecurityCode\\&quot;: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;\\n  },\\n  \\&quot;installments\\&quot;: {\\n    \\&quot;value\\&quot;: 10,\\n    \\&quot;plan\\&quot;: \\&quot;regular\\&quot;\\n  },\\n  \\&quot;amount\\&quot;: {\\n    \\&quot;currency\\&quot;: \\&quot;JPY\\&quot;,\\n    \\&quot;value\\&quot;: 3000\\n  }\\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_REFERENCE',\\n  :paymentMethod =&gt; {\\n    :type =&gt; 'scheme',\\n    :encryptedCardNumber =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...',\\n    :encryptedExpiryMonth =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...',\\n    :encryptedExpiryYear =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...',\\n    :encryptedSecurityCode =&gt; 'adyenjs_0_1_18$MT6ppy0FAMVMLH...'\\n  },\\n  :installments =&gt; {\\n    :value =&gt; 10,\\n    :plan =&gt; 'regular'\\n  },\\n  :amount =&gt; {\\n    :currency =&gt; 'JPY',\\n    :value =&gt; 3000\\n  }\\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;JPY\\&quot;,\\n  value: 3000\\n};\\n\\nconst installments: Types.checkout.Installments = {\\n  value: 10,\\n  plan: Types.checkout.Installments.PlanEnum.Regular\\n};\\n\\nconst cardDetails: Types.checkout.CardDetails = {\\n  encryptedCardNumber: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  encryptedSecurityCode: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  encryptedExpiryYear: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  encryptedExpiryMonth: \\&quot;adyenjs_0_1_18$MT6ppy0FAMVMLH...\\&quot;,\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\n};\\n\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\n  reference: \\&quot;YOUR_REFERENCE\\&quot;,\\n  amount: amount,\\n  merchantAccount: \\&quot;ADYEN_MERCHANT_ACCOUNT\\&quot;,\\n  installments: installments,\\n  paymentMethod: cardDetails\\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>If the payment is successful, the first installment is immediately charged to the shopper's credit card. You will receive 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> response and an <span translate=\"no\"><strong>AUTHORISATION<\/strong><\/span> webhook, same as regular credit card payments. All future installments are charged automatically.<\/p>\n<div class=\"notices yellow\">\n<p>You do not receive webhooks for following installment payments. You can track whether an installment payment is successful with the <a href=\"\/pt\/reporting\/settlement-reconciliation\/transaction-level\/settlement-details-report\">Settlement details report<\/a>. For more information, refer to <a href=\"\/pt\/reporting\/settlement-reconciliation\/transaction-level\/reconcile-installment-payments#installment-reports\">Reconcile installment payments<\/a>.<\/p>\n<\/div>\n<h2 id=\"getting-paid\">Getting paid<\/h2>\n<p>How installment payments are processed and when you receive the funds depend on the shopper's country\/region. For more information, refer to the information specific to the country\/region: <a href=\"#getting-paid-brazil\">Brazil<\/a>, <a href=\"#getting-paid-mexico\">Mexico<\/a>, or <a href=\"#getting-paid-japan\">Japan<\/a>.<\/p>\n<h3 id=\"getting-paid-brazil\">Brazil\u00a0<\/h3>\n<p>In Brazil, you receive funds for each installment as it is settled. There is a settlement delay of 30 days.<\/p>\n<div class=\"sc-notice info\"><div>\n<p>We also offer advancements if you need funds sooner.\u00a0There is an additional fee for this service. Contact your Adyen Account Manager for details.\u00a0<\/p>\n<\/div><\/div>\n<p>For more information on how installments are settled and reconciled in Brazil, see\u00a0<a href=\"\/pt\/reporting\/settlement-reconciliation\/transaction-level\/reconcile-installment-payments\">Reconcile installment payments<\/a>.<\/p>\n<h3 id=\"getting-paid-mexico\">Mexico<\/h3>\n<p>For installment purchases made in Mexico, you will receive the funds in full when the first installment is settled.<\/p>\n<p>Adyen currently supports card installment payments made with cards issued by the following banks: Afirme, Banco Azteca, BanBajio, Banjercito, Banregio, Banorte, Falabella, Hey Banco, HSBC, Inbursa, Invex, Konfio, Liverpool, Mifel, Multiva, RappiCard, Santander, Scotiabank, Suburbia.<br \/>\nTo accept installment payments made with cards issued by other banks, you must have a legal agreement directly with the bank that issued the card.<\/p>\n<div class=\"sc-notice info\"><div>\n<p>You will be charged an additional fee by card schemes for installment purchases in Mexico. Contact your Adyen Account Manager for details.<\/p>\n<\/div><\/div>\n<h3 id=\"getting-paid-japan\">Japan<\/h3>\n<p>For installment purchases made in Japan, you will receive the funds in full when the first installment is settled. Only Visa and Mastercard have a settlement delay of 30 days for twice payment for the second installment. Also, Visa and Mastercard settle twice a year for a one time bonus payment in the middle of July or in the middle of December.<\/p>\n<h2 id=\"testing-credit-card-installments\">Testing credit card installments<\/h2>\n<p>Before making installment payments with live credit cards, use our\u00a0<a href=\"\/pt\/development-resources\/test-cards-and-credentials\/test-card-numbers\">test card numbers<\/a>\u00a0to test your integration.<\/p>\n<p>You can check the status of a test installment purchase in your\u00a0<a href=\"https:\/\/ca-test.adyen.com\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Customer Area<\/a>\u00a0&gt;\u00a0<strong>Transactions<\/strong>\u00a0&gt;\u00a0<strong>Payments<\/strong>.<\/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=\"\/reporting\/settlement-reconciliation\/transaction-level\/reconcile-installment-payments\"\n                        target=\"_self\"\n                        >\n                    Reconcile installment payments\n                <\/a><\/li><li><a href=\"\/payment-methods\/cards\"\n                        target=\"_self\"\n                        >\n                    Card payments\n                <\/a><\/li><li><a href=\"\/payment-methods\"\n                        target=\"_self\"\n                        >\n                    Payment methods\n                <\/a><\/li><\/ul><\/div>\n","url":"https:\/\/docs.adyen.com\/pt\/payment-methods\/cards\/credit-card-installments","articleFields":{"description":"Learn how you can accept credit card payments in installments.","feedback_component":true,"last_edit_on":"21-12-2022 16:41","page_id":"5dd9c79b-b168-473c-92be-35464ae412a4","filters_component":false,"decision_tree":"[]"},"algolia":{"url":"https:\/\/docs.adyen.com\/pt\/payment-methods\/cards\/credit-card-installments","title":"Credit card installments","content":"Paying in installments is a popular form of credit card purchase in Brazil, Mexico, and Japan.\nWhen a shopper makes a purchase in installments, the cost is split into multiple smaller payments, each referred to as an installment. These are charged to the shopper's credit card every 30 days until their purchase has been paid in full. This is popular with shoppers as\u00a0they receive goods or services immediately, but spread the cost of the purchase over multiple months.\nMaking an installment purchase is similar to making a regular card payment. The first installment is charged to the shopper's credit card immediately. Following installments are charged automatically.\n\nFor cards that support 3D Secure, you can also accept installment payments with 3D Secure authentication.\n\n\n\n\nCountry\/region\nCurrency\nPayment type\nRefunds\nPartial refunds\nSeparate captures\nPartial captures\nChargebacks\n\n\n\n\nBrazil\nBRL\nCredit card\n\n\n\n\n\n\n\nMexico\nMXN\nCredit card\n\n\n\n\n\n\n\nJapan\nJPY\nCredit card\n\n\n\n\n\n\n\n\nInstallment options in supported countries\/regions\nThe number of installments you can offer to the shopper depends on their country\/region:\n\n\n\nCountry\/region\nNumber of installments\n\n\n\n\nBrazil\nAny number equal to or greater than 1, and less than 100.\n\n\nMexico\n3, 6, 9, 12, or 18 monthly installments.\n\n\nJapan\nFor regular installments, any number greater than 1, and less than 100.\n\n\n\nUse these numbers for the values when you create a session, create a configuration object or make a payment.\nThere are three types of installment plans for Japan:\n\nRegular: you decide how many installments are offered at checkout for the shopper to choose. The number of installments must be greater than 1 and less than 100.\nRevolving: a payment is split into an initial partial payment, and the remaining amount is split in installments. The cardholder must get a prior approval from the issuer.\nBonus: this installment type coincides with an employee\u2019s summer and winter bonuses and is settled only twice a year - in the middle of July and in the middle of December.\n\nThe type of installment plans that are supported depend on the card network:\n\n\n\nInstallment Plan\nVisa\nMastercard\nJCB\nDiners\n\n\n\n\nRegular\n\n\n\n\n\n\nRevolving\n\n\n\n\n\n\nBonus (1 Time)\n\n\n\n\n\n\n\nRequirements\nMake sure that you have either:\n\nBuilt a Web Drop-in or Components integration. Must be v3.15.0 or later.\nBuilt your own UI for the card payment form.\n\nWeb Drop-in or Components\nWhen you show installment options, the shopper can choose the type and the number of installments in the payment form.\nTo do so, either:\n\nIf you use the  \/sessions endpoint, include the installment options object when you create a session. Supported in v5.21.0 or later.\nIf you use the  \/payments endpoint, include installment options in the configuration object of the Drop-in or Card Component. Supported in v3.15.0 or later.\n\nInclude the installment options object when you create a session\nIn your  \/sessions request, include the installmentOptions object, which has following fields:\n\n\n\nField\nRequired\nDescription\n\n\n\n\nvalues\n\nAn array of the number of installments that the shopper can choose.\n\n\npreselectedValue\n\nThe preselected number of installments in the payment form.\n\n\nplans\n\nAn array that shows the types of installment plans that the shopper can choose.  Possible values: regular and revolving.  If not included, the default is regular.\n\n\n\nWhen you set installment options in the configuration object for cards, you can either :\n\nSet the same installment options for all cards.\nSet installment options for different brands.\n\nSetting installment options for all cards\nIn this example, the API request configures the payment form to show the following installment options, for all card brands:\n\nThe choice of 2, 3, or 5 monthly installments.\nThe choice of a regular or revolving installment plan.\n\n\n    \n\nSetting installment options for different card brands\nIn this example, the API request configures the payment form to show the following installment options:\n\nFor Visa cards:\n\nThe choice of 2 or 4 monthly installments.\nA regular installment plan.\n\nFor Mastercard cards:\n\nThe choice of 2, 3, or 5 monthly installments.\nThe choice of a regular or revolving installment plan.\n\n\n\n    \n\nCreate a configuration object for Drop-in or Card Component\nWhen you set installment options in the configuration object for cards, you can either:\n\nSet the same installment options for all cards.\nSet installment options for different brands.\n\nSetting installment options for all cards\n\/\/example configuration in the Drop-in object\n{\n ...\n paymentMethodsConfiguration: {\n    card: {\n      installmentOptions: {\n        card: {\n            \/\/ Shows 1, 2, and 3 as the numbers of monthly installments that the shopper can choose.\n            values: [1, 2, 3],\n            \/\/ Shows regular and revolving as plans that the shopper can choose.\n            plans: [ 'regular', 'revolving' ]\n        },\n      \/\/ Shows payment amount per installment.\n      showInstallmentAmounts: true\n    }\n ...\n}\nSetting installment options for different card brands\n\/\/example configuration in the Web Drop-in object\n{\n ...\n paymentMethodsConfiguration: {\n    card: {\n      installmentOptions: {\n        visa: {\n            \/\/ Shows 1, 2, and 3 as the numbers of monthly installments that the shopper can choose.\n            values: [1, 2, 3],\n            \/\/ Shows regular and revolving as plans shoppers can choose.\n            plans: [ 'regular', 'revolving' ]\n        },\n        mc: {\n            \/\/ Shows 1 and 2 as the numbers of monthly installments that the shopper can choose.\n            values: [1, 2],\n            \/\/ Shows regular and revolving as plans that the shopper can choose.\n            plans: [ 'regular', 'revolving' ]\n        }\n      },\n      \/\/ Shows payment amount per installment.\n      showInstallmentAmounts: true\n    }\n ...\n}\nMake a payment\nIf you built your own UI for the card payment form, send the installment field in the first payment request.\nBrazil, and Mexico\nTo make an installment payment, additionally include in your  \/payments request: \u00a0\n\ninstallments.value: The number of monthly installments. Include a valid number of installments for the corresponding country\/region.\n\n\nIn Brazil, you can charge the shopper interest for paying in installments. To do this, add the interest to the amount.value.\n\nThe following example shows how to make a 120 Brazilian Real (BRL) purchase that will be paid in\u00a06\u00a0installments of 20 BRL.\n\n    \n\nIf the payment is successful, the first installment is immediately charged to the shopper's credit card. You receive a  \/payments response and an AUTHORISATION webhook, same as regular credit card payments. Following installments will be charged automatically.\n\nYou will not receive webhooks for subsequent installment payments. You can track whether an installment payment is successful with the Settlement details report. For more information, refer to Reconcile installment payments.\n\nJapan\nSupported in Checkout API v64 or later.\nTo make an installment payment, additionally include in your  \/payments request: \u00a0\n\ninstallments.plan: The type of plan. Set this to either regular, revolving, or bonus.\ninstallments.value: The number of monthly installments.\n\nregular plan: this must be set to greater than 1 and less than 100.\nrevolving plan: this must be set to 1.\nbonus plan: this must be set to 1.\n\n\nThe following example shows how to make a 3000 Japanese Yen (JPY) purchase that will be paid in\u00a010\u00a0installments of 300 JPY.\n\n    \n\nIf the payment is successful, the first installment is immediately charged to the shopper's credit card. You will receive a  \/payments response and an AUTHORISATION webhook, same as regular credit card payments. All future installments are charged automatically.\n\nYou do not receive webhooks for following installment payments. You can track whether an installment payment is successful with the Settlement details report. For more information, refer to Reconcile installment payments.\n\nGetting paid\nHow installment payments are processed and when you receive the funds depend on the shopper's country\/region. For more information, refer to the information specific to the country\/region: Brazil, Mexico, or Japan.\nBrazil\u00a0\nIn Brazil, you receive funds for each installment as it is settled. There is a settlement delay of 30 days.\n\nWe also offer advancements if you need funds sooner.\u00a0There is an additional fee for this service. Contact your Adyen Account Manager for details.\u00a0\n\nFor more information on how installments are settled and reconciled in Brazil, see\u00a0Reconcile installment payments.\nMexico\nFor installment purchases made in Mexico, you will receive the funds in full when the first installment is settled.\nAdyen currently supports card installment payments made with cards issued by the following banks: Afirme, Banco Azteca, BanBajio, Banjercito, Banregio, Banorte, Falabella, Hey Banco, HSBC, Inbursa, Invex, Konfio, Liverpool, Mifel, Multiva, RappiCard, Santander, Scotiabank, Suburbia.\nTo accept installment payments made with cards issued by other banks, you must have a legal agreement directly with the bank that issued the card.\n\nYou will be charged an additional fee by card schemes for installment purchases in Mexico. Contact your Adyen Account Manager for details.\n\nJapan\nFor installment purchases made in Japan, you will receive the funds in full when the first installment is settled. Only Visa and Mastercard have a settlement delay of 30 days for twice payment for the second installment. Also, Visa and Mastercard settle twice a year for a one time bonus payment in the middle of July or in the middle of December.\nTesting credit card installments\nBefore making installment payments with live credit cards, use our\u00a0test card numbers\u00a0to test your integration.\nYou can check the status of a test installment purchase in your\u00a0Customer Area\u00a0&gt;\u00a0Transactions\u00a0&gt;\u00a0Payments.\nSee also\n\n\n                    Reconcile installment payments\n                \n                    Card payments\n                \n                    Payment methods\n                \n","type":"page","locale":"pt","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Payment methods","lvl2":"Cards","lvl3":"Credit card installments"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/pt","lvl1":"https:\/\/docs.adyen.com\/pt\/payment-methods","lvl2":"https:\/\/docs.adyen.com\/pt\/payment-methods\/cards","lvl3":"\/pt\/payment-methods\/cards\/credit-card-installments"},"levels":4,"category":"Payment method","category_color":"green","tags":["Credit","installments"]},"articleFiles":{"2162671905.js":"<p alt=\"\">2162671905.js<\/p>","6169509452.js":"<p alt=\"\">6169509452.js<\/p>","6260474502.js":"<p alt=\"\">6260474502.js<\/p>","7181624634.js":"<p alt=\"\">7181624634.js<\/p>","8135458315.js":"<p alt=\"\">8135458315.js<\/p>","8135993935.js":"<p alt=\"\">8135993935.js<\/p>","8424541014.js":"<p alt=\"\">8424541014.js<\/p>","9188604355.js":"<p alt=\"\">9188604355.js<\/p>"}}
