{"title":"Advanced flow integration guide","category":"default","creationDate":1776961627,"content":"<div data-component-wrapper=\"in-page-filtering\">\n    <in-page-filtering\n        id=\"advanced-flow-integration\"\n        :in-page-filtering=\"{&quot;guides&quot;:{&quot;web&quot;:{&quot;label&quot;:&quot;Web&quot;,&quot;integrations&quot;:{&quot;drop-in&quot;:{&quot;label&quot;:&quot;Drop-in&quot;,&quot;description&quot;:&quot;Use our pre-built UI for accepting payments&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;Web Drop-in&lt;\\\/h2&gt;\\n&lt;p&gt;Render a list of available payment methods anywhere on your website.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=web%20drop-in\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Low development time to integrate payment methods&lt;\\\/li&gt;\\n&lt;li&gt;UI styling customization for the list of payment methods&lt;\\\/li&gt;\\n&lt;li&gt;Adding payment methods to the list requires no extra development time&lt;\\\/li&gt;\\n&lt;li&gt;3D Secure 2 support built in&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Demo&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a href=\\&quot;https:\\\/\\\/www.mystoredemo.io\\\/#\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View live demo&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;visual_images&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/web\\\/dropin\\\/visual\\\/web-v6-drop-in.png&quot;,&quot;external_content&quot;:&quot;&lt;h3&gt;Adyen Web on GitHub&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-web\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View the Adyen Web repository&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/adyen-examples\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View our example integrations&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;external_icon&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/web\\\/github\\\/github-mark.png&quot;,&quot;versions&quot;:{&quot;version-6.31.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;optional_update_amount&quot;:{&quot;$ref&quot;:&quot;28df1f9d1f2f0d31a04e2e95a50dd303&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4f0f614ce399f34fbd75e7c114ae8a8d&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.31.1&quot;}},&quot;version-6.31.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;optional_update_amount&quot;:{&quot;$ref&quot;:&quot;28df1f9d1f2f0d31a04e2e95a50dd303&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4f0f614ce399f34fbd75e7c114ae8a8d&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;6.31.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69}},&quot;version-6.30.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4f0f614ce399f34fbd75e7c114ae8a8d&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.30.0&quot;}},&quot;version-6.29.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4f0f614ce399f34fbd75e7c114ae8a8d&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;6.29.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69}},&quot;version-6.28.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.28.0&quot;}},&quot;version-6.27.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.27.1&quot;}},&quot;version-6.27.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.27.0&quot;}},&quot;version-6.26.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.26.0&quot;}},&quot;version-6.25.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.25.0&quot;}},&quot;version-6.24.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.24.0&quot;}},&quot;version-6.23.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.23.0&quot;}},&quot;version-6.22.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.22.0&quot;}},&quot;version-6.21.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.21.0&quot;}},&quot;version-6.20.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.20.0&quot;}},&quot;version-6.19.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.19.0&quot;}},&quot;version-6.18.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.18.1&quot;}},&quot;version-6.18.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.18.0&quot;}},&quot;version-6.17.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.17.0&quot;}},&quot;version-6.16.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.16.0&quot;}},&quot;version-6.15.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.15.0&quot;}},&quot;version-6.14.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.14.0&quot;}},&quot;version-6.13.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.13.1&quot;}},&quot;version-6.13.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.13.0&quot;}},&quot;version-6.12.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.12.1&quot;}},&quot;version-6.12.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.12.0&quot;}},&quot;version-6.11.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.11.0&quot;}},&quot;version-6.10.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.10.0&quot;}},&quot;version-6.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.9.0&quot;}},&quot;version-6.8.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.8.0&quot;}},&quot;version-6.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.7.0&quot;}},&quot;version-6.6.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.6.0&quot;}},&quot;version-6.5.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.5.1&quot;}},&quot;version-6.5.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.5.0&quot;}},&quot;version-6.4.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.4.0&quot;}},&quot;version-6.3.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.3.0&quot;}},&quot;version-6.2.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.2.0&quot;}},&quot;version-6.1.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.1.1&quot;}},&quot;version-6.1.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.1.0&quot;}},&quot;version-6.0.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.0.3&quot;}},&quot;version-6.0.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.0.2&quot;}},&quot;version-6.0.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.0.1&quot;}},&quot;version-6.0.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;c8f715d72be71a9d39b5a73d29831011&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;f209b45f3373538446e123c72b843e18&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;6.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69}},&quot;version-5.72.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.72.0&quot;}},&quot;version-5.71.5&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.71.5&quot;}},&quot;version-5.71.4&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.71.4&quot;}},&quot;version-5.71.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.71.3&quot;}},&quot;version-5.71.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.71.2&quot;}},&quot;version-5.71.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.71.1&quot;}},&quot;version-5.71.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.71.0&quot;}},&quot;version-5.70.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.70.0&quot;}},&quot;version-5.69.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.69.1&quot;}},&quot;version-5.69.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.69.0&quot;}},&quot;version-5.68.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.68.1&quot;}},&quot;version-5.68.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.68.0&quot;}},&quot;version-5.67.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.67.1&quot;}},&quot;version-5.67.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.67.0&quot;}},&quot;version-5.66.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.66.1&quot;}},&quot;version-5.66.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.66.0&quot;}},&quot;version-5.65.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.65.0&quot;}},&quot;version-5.64.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.64.0&quot;}},&quot;version-5.63.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.63.0&quot;}},&quot;version-5.62.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.62.0&quot;}},&quot;version-5.61.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.61.0&quot;}},&quot;version-5.60.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.60.0&quot;}},&quot;version-5.59.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.59.0&quot;}},&quot;version-5.58.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.58.0&quot;}},&quot;version-5.57.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.57.0&quot;}},&quot;version-5.56.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.56.1&quot;}},&quot;version-5.56.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.56.0&quot;}},&quot;version-5.55.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.55.1&quot;}},&quot;version-5.54.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.54.0&quot;}},&quot;version-5.53.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.53.3&quot;}},&quot;version-5.53.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.53.2&quot;}},&quot;version-5.53.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.53.1&quot;}},&quot;version-5.53.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.53.0&quot;}},&quot;version-5.52.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.52.0&quot;}},&quot;version-5.51.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;7d9fab858b11b0b383e523f8fea38061&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;de379496154fffc3041c69cae957ca6a&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.51.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-5.50.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.50.1&quot;}},&quot;version-5.50.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.50.0&quot;}},&quot;version-5.49.6&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.6&quot;}},&quot;version-5.49.5&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.5&quot;}},&quot;version-5.49.4&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.4&quot;}},&quot;version-5.49.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.3&quot;}},&quot;version-5.49.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.2&quot;}},&quot;version-5.49.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.1&quot;}},&quot;version-5.49.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.0&quot;}},&quot;version-5.48.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.48.0&quot;}},&quot;version-5.47.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.47.0&quot;}},&quot;version-5.46.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.46.1&quot;}},&quot;version-5.46.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.46.0&quot;}},&quot;version-5.45.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.45.0&quot;}},&quot;version-5.44.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.44.0&quot;}},&quot;version-5.43.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.43.1&quot;}},&quot;version-5.43.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.43.0&quot;}},&quot;version-5.42.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.42.1&quot;}},&quot;version-5.42.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.42.0&quot;}},&quot;version-5.41.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.41.0&quot;}},&quot;version-5.40.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.40.1&quot;}},&quot;version-5.40.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.40.0&quot;}},&quot;version-5.39.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.39.1&quot;}},&quot;version-5.39.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.39.0&quot;}},&quot;version-5.38.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.38.0&quot;}},&quot;version-5.37.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.37.0&quot;}},&quot;version-5.36.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.36.0&quot;}},&quot;version-5.35.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.35.0&quot;}},&quot;version-5.34.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.34.0&quot;}},&quot;version-5.33.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.33.0&quot;}},&quot;version-5.32.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.32.0&quot;}},&quot;version-5.31.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.31.3&quot;}},&quot;version-5.31.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.31.2&quot;}},&quot;version-5.31.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.31.1&quot;}},&quot;version-5.31.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.31.0&quot;}},&quot;version-5.30.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.30.1&quot;}},&quot;version-5.30.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.30.0&quot;}},&quot;version-5.29.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.29.0&quot;}},&quot;version-5.28.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.28.3&quot;}},&quot;version-5.28.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.28.2&quot;}},&quot;version-5.28.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.28.1&quot;}},&quot;version-5.28.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.28.0&quot;}},&quot;version-5.27.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.27.0&quot;}},&quot;version-5.26.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.26.0&quot;}},&quot;version-5.25.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.25.0&quot;}},&quot;version-5.24.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.24.0&quot;}},&quot;version-5.23.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.23.1&quot;}},&quot;version-5.23.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.23.0&quot;}},&quot;version-5.22.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.22.0&quot;}},&quot;version-5.21.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.21.0&quot;}},&quot;version-5.20.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.20.0&quot;}},&quot;version-5.19.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.19.0&quot;}},&quot;version-5.18.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.18.0&quot;}},&quot;version-5.17.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.17.0&quot;}},&quot;version-5.16.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.2&quot;}},&quot;version-5.16.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.1&quot;}},&quot;version-5.16.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-5.15.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.15.0&quot;}},&quot;version-5.14.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.14.0&quot;}},&quot;version-5.13.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.13.1&quot;}},&quot;version-5.13.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.13.0&quot;}},&quot;version-5.12.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.12.0&quot;}},&quot;version-5.11.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.11.0&quot;}},&quot;version-5.10.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.10.0&quot;}},&quot;version-5.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.9.0&quot;}},&quot;version-5.8.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.8.0&quot;}},&quot;version-5.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.7.0&quot;}},&quot;version-5.6.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.6.2&quot;}},&quot;version-5.6.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.6.1&quot;}},&quot;version-5.5.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.5.0&quot;}},&quot;version-5.4.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.4.0&quot;}},&quot;version-5.3.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.3.1&quot;}},&quot;version-5.3.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.3.0&quot;}},&quot;version-5.2.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.2.2&quot;}},&quot;version-5.2.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.2.1&quot;}},&quot;version-5.2.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.2.0&quot;}},&quot;version-5.1.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.1.0&quot;}},&quot;version-5.0.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-4.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;3765b5372954e00724b625cc9aef09b7&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;40359e7134344f66cff8623b9df00519&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;fc33292eb22854312c7fb92c16fd243b&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;182a76dc032fd64863becfb462c70194&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.9.0&quot;}},&quot;version-4.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;3765b5372954e00724b625cc9aef09b7&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;97082b3a7739497f6252320b93de3817&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;40359e7134344f66cff8623b9df00519&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;fc33292eb22854312c7fb92c16fd243b&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;182a76dc032fd64863becfb462c70194&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;4.7.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-4.6.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4943f7f1a63f0163fc4f22cc69265433&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebc38d6c4ee526888ea37003392555c&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;5380a2d83d36e7b19fdff977aa177660&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;3765b5372954e00724b625cc9aef09b7&quot;},&quot;configuring-drop-in&quot;:{&quot;$ref&quot;:&quot;0ff626ea73a7f3b3c64c7ae6a5cc06be&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;763217141df4196ce97e7184c84f3aef&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;40359e7134344f66cff8623b9df00519&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;fc33292eb22854312c7fb92c16fd243b&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;182a76dc032fd64863becfb462c70194&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;328f3fb187e17d61c62da0dcf129e881&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;d9b11f0dacb1601c5ca715306a02a626&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;4.6.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;4943f7f1a63f0163fc4f22cc69265433&quot;:&quot;&lt;p&gt;Drop-in is our pre-built UI solution for accepting payments on your  website. Drop-in shows all payment methods as a list, in the same block. This integration requires you to make API requests to  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt;,  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt;, and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; endpoints.&lt;\\\/p&gt;\\n&lt;p&gt;Adding new payment methods usually doesn&#039;t require more development work. Drop-in supports &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/web-drop-in\\&quot;&gt;cards&lt;\\\/a&gt;, &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;wallets&lt;\\\/a&gt;, and &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;most local payment methods&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&quot;,&quot;192d4e59b63ca997d809435c37abc6fc&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;additional-info-block output-inline\\&quot;&gt;\\n&lt;h5 class=\\&quot;article__heading additional-info-block__title\\&quot;&gt;Check out our Node.js + Express tutorial&lt;\\\/h5&gt;&lt;div class=\\&quot;additional-info-block__body\\&quot;&gt;&lt;p&gt;Follow our tutorial to &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/advanced-flow\\\/web-drop-in-tutorial\\&quot;&gt;integrate Drop-in with Node.js and Express&lt;\\\/a&gt;.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/div&gt;\\n\\n&lt;p&gt;Before you begin to integrate, make sure you have followed the &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen guide&lt;\\\/a&gt; to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Get an overview of the steps needed to accept live payments.&lt;\\\/li&gt;\\n&lt;li&gt;Create your test account.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After you have created your test account:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt; to know the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;To make sure that your 3D Secure integration works on Chrome, your cookies need to have the SameSite attribute. For more information, refer to &lt;a href=\\&quot;https:\\\/\\\/developers.google.com\\\/search\\\/blog\\\/2020\\\/01\\\/get-ready-for-new-samesitenone-secure\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Chrome SameSite Cookie policy&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&quot;,&quot;aebc38d6c4ee526888ea37003392555c&quot;:&quot;&lt;h2 id=\\&quot;how-it-works\\&quot;&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Drop-in integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details.\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  website&lt;\\\/strong&gt;: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  website.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps4866\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#add\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  website.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a rel=\\&quot;lightbox\\&quot; href=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/web\\\/4-6-0\\\/drop-in\\\/02.how-it-works\\\/drop-in-flow.jpg\\&quot; src=\\&quot;\\&quot;&gt;\\n  &lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/web\\\/4-6-0\\\/drop-in\\\/02.how-it-works\\\/drop-in-flow.jpg\\&quot; \\\/&gt;\\n&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, submit a request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#add\\&quot;&gt;Create an instance of Drop-in&lt;\\\/a&gt; on your payments form.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;submit a payment request&lt;\\\/a&gt; with data you receive from Drop-in.&lt;\\\/li&gt;\\n&lt;li&gt;Determine from the response if you need to &lt;a href=\\&quot;#additional-action\\&quot;&gt;perform additional actions on your client website&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;submit additional payment details&lt;\\\/a&gt; with data you receive from Drop-in.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Show the payment result to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;When you have completed the integration, proceed to &lt;a href=\\&quot;#testing-your-integration\\&quot;&gt;test your integration&lt;\\\/a&gt;.&lt;\\\/p&gt;&quot;,&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabTEOfJ19664\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;19664&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;5380a2d83d36e7b19fdff977aa177660&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.&lt;\\\/p&gt;\\n&lt;p&gt;From your server, make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, specifying:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;. This is used to filter the list of available payment methods to your shopper.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The platform of the shopper&#039;s device; use &lt;strong&gt;Web&lt;\\\/strong&gt;. This is used to filter the list of available payment methods to your shopper.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. This is used to filter the list of available payment methods to your shopper. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, the &lt;code&gt;shopperlocale&lt;\\\/code&gt; is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code. You also need to set the same &lt;code&gt;locale&lt;\\\/code&gt; within your Drop-in configuration.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The following example shows how to get the available payment methods for a shopper in the &lt;strong&gt;Netherlands&lt;\\\/strong&gt;, for a payment of &lt;strong&gt;EUR&amp;nbsp;10&lt;\\\/strong&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;web-advanced-flow-post-payment-methods-request&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v28.4.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(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest()\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .countryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  .channel(PaymentMethodsRequest.ChannelEnum.WEB)\\\\n  .shopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen PHP API Library v20.3.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentMethodsRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentMethodsRequest = new PaymentMethodsRequest();\\\\n$paymentMethodsRequest\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setCountryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  -&amp;gt;setChannel(\\\\&amp;quot;Web\\\\&amp;quot;)\\\\n  -&amp;gt;setShopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v20.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 = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest\\\\n{\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode = \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  Channel = PaymentMethodsRequest.ChannelEnum.Web,\\\\n  ShopperLocale = \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v19.3.0\\\\n\\\\\\\/\\\\\\\/ Require the parts of the module you want to use\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\\\\/\\\\\\\/ Initialize the client object\\\\n\\\\\\\/\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\nconst client = new Client({apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, environment: \\\\&amp;quot;TEST\\\\&amp;quot;});\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v12.2.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v9\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v9\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v9\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentMethodsRequest := checkout.PaymentMethodsRequest{\\\\n  Amount: &amp;amp;amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode: common.PtrString(\\\\&amp;quot;NL\\\\&amp;quot;),\\\\n  Channel: common.PtrString(\\\\&amp;quot;Web\\\\&amp;quot;),\\\\n  ShopperLocale: common.PtrString(\\\\&amp;quot;nl-NL\\\\&amp;quot;),\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v12.7.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the live environment, additionally include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v9.7.1\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the live environment, additionally include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Web&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v19.3.0\\\\n\\\\\\\/\\\\\\\/ Require the parts of the module you want to use\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\\\\/\\\\\\\/ Initialize the client object\\\\n\\\\\\\/\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\nconst client = new Client({apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, environment: \\\\&amp;quot;TEST\\\\&amp;quot;});\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.Web,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available &lt;code&gt;paymentMethods&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;\\\/paymentMethods response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n   {\\\\n     \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n     \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;Cards\\\\\\&quot;,\\\\n     \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;scheme\\\\\\&quot;\\\\n     ...\\\\n   },\\\\n   {\\\\n     \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n     \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n     \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n   },\\\\n   ...\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Pass the response to your client website. You&#039;ll use this in the next step to show which payment methods are available for the shopper.&lt;\\\/p&gt;\\n&lt;h3&gt;Custom list of payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;When you make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, the response includes all payment methods that you enabled in your Customer Area that are available for the transaction.&lt;\\\/p&gt;\\n&lt;p&gt;To exclude payment methods from the available list of available payment methods for a specific transaction, include one of the following parameters when making your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt; &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods#request-allowedPaymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;allowedPaymentMethods&lt;\\\/a&gt;&amp;#58; Drop-in renders only the payment methods that you specify.&lt;\\\/li&gt;\\n&lt;li&gt; &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods#request-blockedPaymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;blockedPaymentMethods&lt;\\\/a&gt;&amp;#58; Drop-in doesn&#039;t render payment methods that you specify.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;3765b5372954e00724b625cc9aef09b7&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Drop-in to your payments form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Next, use Drop-in to show the available payment methods, and to collect payment details from your shopper. Install the Adyen Web Node package or use a &lt;code&gt;&amp;lt;script&amp;gt;&lt;\\\/code&gt; tag.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tab9rlgc79241\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;79241&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;npm (recommended)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Install the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/package\\\\\\\/@adyen\\\\\\\/adyen-web\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Adyen Web Node package&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install @adyen\\\\\\\\\\\\\\\/adyen-web --save\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Import Adyen Web into your application:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;import { AdyenCheckout } from &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web&amp;#039;;\\\\\\\\nimport &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web\\\\\\\\\\\\\\\/styles\\\\\\\\\\\\\\\/adyen.css&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;npm_(recommended)_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Embed script and stylesheet&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Include the following script in the\\\\u00a0&amp;lt;code&amp;gt;&amp;amp;lt;body&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;\\\\u00a0above any other JavaScript in your checkout page:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;We recommend that you also validate the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/web-best-practices#implement-subresource-integrity-hashes\\\\&amp;quot;&amp;gt;Subresource Integrity (SRI) hash&amp;lt;\\\\\\\/a&amp;gt;, which we provide for each version of our JavaScript and CSS files. You can find the SRI hashes in our &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/release-notes\\\\&amp;quot;&amp;gt;release notes&amp;lt;\\\\\\\/a&amp;gt;, under &amp;lt;strong&amp;gt;Updating to this version&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;script src=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.js\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-KF6Y8NQXGnIuzqJn5rcqCe6dMy7gBWobcIKr1BmIaz6pOeBAV0hrHBBMbHC\\\\\\\/inHu\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;&amp;amp;lt;\\\\\\\/script&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute.--&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Use the following CSS file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;link rel=\\\\&amp;quot;stylesheet\\\\&amp;quot; href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.css\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-uwMmo3xJR0e9jI+Oi5kzu43ShY0pXrb3auIlCjLjMNtl0X8Nat55eXNqwj8xU6H9\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute. --&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;embed_script_and_stylesheet_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;&amp;emsp;&amp;emsp;&amp;nbsp;You can &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;add your own styling&lt;\\\/a&gt; by overriding the rules in this CSS file.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a DOM element on your checkout page, placing it where you want Drop-in to be rendered on the page. We strongly recommend that you do not put it in an &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/HTML\\\/Element\\\/iframe\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;iframe element&lt;\\\/a&gt;, because it may cause issues.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create a DOM element&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;html\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;&amp;lt;div id=\\\\\\&quot;dropin-container\\\\\\&quot;&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;If you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;init-drop-in\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;4\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a &lt;code&gt;configuration&lt;\\\/code&gt; object with the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response returned &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;when you get available payment methods&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;. &lt;br&gt; Web Drop-in versions before 3.10.1 use &lt;code&gt;originKey&lt;\\\/code&gt; instead. Find out how to &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\\/migrate-from-origin-key-to-client-key\\&quot;&gt;migrate from using &lt;code&gt;originKey&lt;\\\/code&gt; to &lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;locale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. This is used to set the language rendered in the UI. For a list of supported locales, see\\u00a0&lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;Language and localization&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/drop-in-web#testing-your-integration\\&quot;&gt;live environments&lt;\\\/a&gt;.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit(state, dropin)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button and payment details are valid.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onChange(state, dropin)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the shopper provides the required payment details.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails(state, dropin)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when a payment method requires more details, for example for native 3D Secure 2, or native QR code payment methods.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onError(error)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when an error occurs in Drop-in.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsConfiguration&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Required or optional configuration for specific payment methods. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guides&lt;\\\/a&gt;. &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Amount to be displayed on the &lt;strong&gt;Pay&lt;\\\/strong&gt; Button. It expects an object with the value and currency properties. For example, &lt;code&gt;{ value: 1000, currency: &#039;USD&#039; }&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create configuration object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const configuration = {\\\\n    paymentMethodsResponse: paymentMethodsResponse, \\\\\\\/\\\\\\\/ The `\\\\\\\/paymentMethods` response from the server.\\\\n    clientKey: \\\\&amp;quot;YOUR_CLIENT_KEY\\\\&amp;quot;, \\\\\\\/\\\\\\\/ Web Drop-in versions before 3.10.1 use originKey instead of clientKey.\\\\n    locale: \\\\&amp;quot;en-US\\\\&amp;quot;,\\\\n    environment: \\\\&amp;quot;test\\\\&amp;quot;,\\\\n    analytics: {\\\\n      enabled: true \\\\\\\/\\\\\\\/ Set to false to not send analytics data to Adyen.\\\\n    },\\\\n    onSubmit: (state, dropin) =&amp;gt; {\\\\n        \\\\\\\/\\\\\\\/ Global configuration for onSubmit\\\\n        \\\\\\\/\\\\\\\/ Your function calling your server to make the `\\\\\\\/payments` request\\\\n        makePayment(state.data)\\\\n          .then(response =&amp;gt; {\\\\n            if (response.action) {\\\\n              \\\\\\\/\\\\\\\/ Drop-in handles the action object from the \\\\\\\/payments response\\\\n              dropin.handleAction(response.action);\\\\n            } else {\\\\n              \\\\\\\/\\\\\\\/ Your function to show the final result to the shopper\\\\n              showFinalResult(response);\\\\n            }\\\\n          })\\\\n          .catch(error =&amp;gt; {\\\\n            throw Error(error);\\\\n          });\\\\n      },\\\\n    onAdditionalDetails: (state, dropin) =&amp;gt; {\\\\n      \\\\\\\/\\\\\\\/ Your function calling your server to make a `\\\\\\\/payments\\\\\\\/details` request\\\\n      makeDetailsCall(state.data)\\\\n        .then(response =&amp;gt; {\\\\n          if (response.action) {\\\\n            \\\\\\\/\\\\\\\/ Drop-in handles the action object from the \\\\\\\/payments response\\\\n            dropin.handleAction(response.action);\\\\n          } else {\\\\n            \\\\\\\/\\\\\\\/ Your function to show the final result to the shopper\\\\n            showFinalResult(response);\\\\n          }\\\\n        })\\\\n        .catch(error =&amp;gt; {\\\\n          throw Error(error);\\\\n        });\\\\n    },\\\\n    paymentMethodsConfiguration: {\\\\n      card: { \\\\\\\/\\\\\\\/ Example optional configuration for Cards\\\\n        hasHolderName: true,\\\\n        holderNameRequired: true,\\\\n        enableStoreDetails: true,\\\\n        hideCVC: false, \\\\\\\/\\\\\\\/ Change this to true to hide the CVC field for stored cards\\\\n        name: &#039;Credit or debit card&#039;,\\\\n        onSubmit: () =&amp;gt; {}, \\\\\\\/\\\\\\\/ onSubmit configuration for card payments. Overrides the global configuration.\\\\n      }\\\\n    }\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use the &lt;code&gt;configuration&lt;\\\/code&gt; object to create an instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create an instance of AdyenCheckout&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;const checkout = new AdyenCheckout(configuration);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use the returned value to create and mount an instance of Drop-in. Drop-in also accepts &lt;a href=\\&quot;#configure\\&quot;&gt;props related to itself&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create and mount Drop-in&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const dropin = checkout\\\\n   .create(&#039;dropin&#039;, {\\\\n      \\\\\\\/\\\\\\\/ Starting from version 4.0.0, Drop-in configuration only accepts props related to itself and cannot contain generic configuration like the onSubmit event.\\\\n      openFirstPaymentMethod:false\\\\n   })\\\\n   .mount(&#039;#dropin-container&#039;);&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, Drop-in calls the &lt;code&gt;onSubmit&lt;\\\/code&gt; event, which contains a &lt;code&gt;state.data&lt;\\\/code&gt;. These are the shopper details that you need to make the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Sample state from onSubmit event for a card payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    isValid: true,\\\\n    data: {\\\\n      paymentMethod: {\\\\n        type: \\\\\\&quot;scheme\\\\\\&quot;,\\\\n        encryptedCardNumber: \\\\\\&quot;adyenjs_0_1_18$k7s65M5V0KdPxTErhBIPoMPI8HlC..\\\\\\&quot;,\\\\n        encryptedExpiryMonth: \\\\\\&quot;adyenjs_0_1_18$p2OZxW2XmwAA8C1Avxm3G9UB6e4..\\\\\\&quot;,\\\\n        encryptedExpiryYear: \\\\\\&quot;adyenjs_0_1_18$CkCOLYZsdqpxGjrALWHj3QoGHqe+..\\\\\\&quot;,\\\\n        encryptedSecurityCode: \\\\\\&quot;adyenjs_0_1_18$XUyMJyHebrra\\\\\\\/TpSda9fha978+..\\\\\\&quot;\\\\n        holderName: \\\\\\&quot;S. Hopper\\\\\\&quot;\\\\n      }\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;0ff626ea73a7f3b3c64c7ae6a5cc06be&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;Configuring Drop-in&lt;\\\/h3&gt;\\n&lt;p&gt;Drop-in accepts the following props.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;openFirstPaymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;When enabled, Drop-in opens the first payment method automatically on page load. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;openFirstStoredPaymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;When enabled, Drop-in opens the payment method with stored card details on page load. This option takes precedence over &lt;code&gt;openFirstPaymentMethod&lt;\\\/code&gt;. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showStoredPaymentMethods&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Shows or hides payment methods with stored card details. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showRemovePaymentMethodButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Allows the shopper to remove a stored payment method. Defaults to &lt;strong&gt;false&lt;\\\/strong&gt;. &lt;br&gt; If using this prop, you must also implement the &lt;code&gt;onDisableStoredPaymentMethod&lt;\\\/code&gt; callback.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPaymentMethods&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Shows or hides regular (not stored) payment methods. Set to &lt;strong&gt;false&lt;\\\/strong&gt;  if you only want to show payment methods with stored card details. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Show or hides a &lt;strong&gt;Pay&lt;\\\/strong&gt; Button for each payment method. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;. The &lt;strong&gt;Pay&lt;\\\/strong&gt; button triggers the &lt;code&gt;onSubmit&lt;\\\/code&gt; event when payment details are valid. &lt;br&gt; &lt;p&gt;&lt;\\\/p&gt; If you want to disable the button and then trigger the submit flow on your own, set this to &lt;strong&gt;false&lt;\\\/strong&gt; and call the &lt;code&gt;.submit()&lt;\\\/code&gt; method from your own button implementation. For example, &lt;code&gt;dropin.submit()&lt;\\\/code&gt;&lt;p&gt;&lt;\\\/p&gt; Note that PayPal Smart Payment Buttons doesn&#039;t support the &lt;code&gt;.submit()&lt;\\\/code&gt; method.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;763217141df4196ce97e7184c84f3aef&quot;:&quot;&lt;h4 id=\\&quot;events\\&quot;&gt;Events&lt;\\\/h4&gt;\\n&lt;p&gt;Use the following events to include additional logic on your checkout page:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Event name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onReady()&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Called when Drop-in is initialized and ready for use.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSelect(component)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Called when the shopper selects a payment method.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onDisableStoredPaymentMethod(storedPaymentMethodId, resolve, reject)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Called when a shopper removes a stored payment method. To remove the selected payment method, make a &lt;strong&gt;DELETE&lt;\\\/strong&gt; &lt;code&gt;\\\/storedPaymentMethod&lt;\\\/code&gt; request including the &lt;code&gt;storedPaymentMethodId&lt;\\\/code&gt;. Then call either &lt;code&gt;resolve()&lt;\\\/code&gt; or &lt;code&gt;reject()&lt;\\\/code&gt;, depending on the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/delete\\\/storedPaymentMethods\\\/(storedPaymentMethodId)\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/storedPaymentMethods\\\/{storedPaymentMethodId}&lt;\\\/a&gt; response.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;5e311fb3e74d7589a77bceeb811e1e60&quot;:&quot;&lt;h4 id=\\&quot;methods\\&quot;&gt;Methods&lt;\\\/h4&gt;\\n&lt;p&gt;Drop-in supports the following methods:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Method name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;mount(selector)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Mounts the Drop-in into the DOM returned by the &lt;code&gt;selector&lt;\\\/code&gt;. &lt;br&gt; The &lt;code&gt;selector&lt;\\\/code&gt; must be either a &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/API\\\/Document\\\/querySelector#parameters\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;valid CSS selector string&lt;\\\/a&gt; or an &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/API\\\/HTMLElement\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;HTMLElement&lt;\\\/a&gt; reference.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;unmount()&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Unmounts the Drop-in from the DOM. We recommend to unmount in case the payment amount changes after the initial mount.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;closeActivePaymentMethod()&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Closes a selected payment method, for example if you want to reset the Drop-in.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;40359e7134344f66cff8623b9df00519&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper submits their payment details or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a  &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;state.data.paymentMethod&lt;\\\/code&gt; from the &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client website.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;URL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;. You can also include your own additional query parameters, for example, shopper ID or order reference number.  &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;riskData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/risk-management\\\/fraud-data-collection\\&quot;&gt;Device characteristics and other data&lt;\\\/a&gt; that we use to detect fraudulent payment activity, and mitigate fraud.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-web-earlier&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n\\\\t    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n\\\\t   \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nRiskData riskData = new RiskData()\\\\n  .clientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  .riskData(riskData);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\RiskData;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$riskData = new RiskData();\\\\n$riskData\\\\n  -&amp;gt;setClientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  -&amp;gt;setRiskData($riskData);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.2\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nRiskData riskData = new RiskData\\\\n{\\\\n  ClientData = \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData = riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: {\\\\n    type: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: {\\\\n    clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\nriskData := checkout.RiskData{\\\\n  ClientData: common.PtrString(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData: &amp;amp;riskData,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;,\\\\n  :riskData =&amp;gt; {\\\\n    :clientData =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==&#039;\\\\n  },\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst riskData: Types.checkout.RiskData = {\\\\n  clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabO9B0M23530\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;23530&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v67 or later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;If the response has no &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;If the response contains an &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#additional-action\\\\&amp;quot;&amp;gt;handle the additional action&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example response with a redirect action&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;v67-redirect-response&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n     \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n     \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n     \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n     \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\\\\\\\\\/checkoutshopper\\\\\\\\\\\\\\\/checkoutPaymentRedirect?...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v67&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67-payments-response_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v67&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v66 or later earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;If the response has no &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;If the response contains an &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#additional-action\\\\&amp;quot;&amp;gt;handle the additional action&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example response with a redirect action&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;v66-redirect-response&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v66&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66-payments-response_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v66&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;fc33292eb22854312c7fb92c16fd243b&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper such as: to scan a QR code, to authenticate a payment with 3D Secure, or to log in to their bank&#039;s website to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;To handle these additional front-end actions, Drop-in uses the &lt;code&gt;dropin.handleAction&lt;\\\/code&gt; function depending on the &lt;code&gt;action.type&lt;\\\/code&gt;. You should also use the &lt;code&gt;action.type&lt;\\\/code&gt; to determine your next steps.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabkMoPi34627\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;34627&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v67 and later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;&amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Next steps&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;voucher&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Drop-in shows the voucher which the shopper &amp;lt;br&amp;gt; uses to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;Get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Drop-in redirects the shopper to another website or app to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. When the shopper returns to your website, your server needs to &amp;lt;a href=\\\\&amp;quot;?tab=v67-actions_2#handle-the-redirect-result-1\\\\&amp;quot;&amp;gt;handle the redirect result&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;qrCode&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Drop-in presents the QR code &amp;lt;br&amp;gt; and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;await&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Drop-in shows the waiting screen while the shopper completes the payment. &amp;lt;br&amp;gt; Depending on the payment outcome, Drop-in calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;onError&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; object from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;onError&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;sdk&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Drop-in presents the specific payment method&amp;#039;s UI as an overlay &amp;lt;br&amp;gt; and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;threeDS2&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The payment qualifies for 3D Secure 2,  and will go through the authentication flow. &amp;lt;br&amp;gt; Drop-in performs the authentication flow, and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;h3 id=\\\\&amp;quot;handle-the-redirect-result\\\\&amp;quot;&amp;gt;Handle the redirect result&amp;lt;\\\\\\\/h3&amp;gt;\\\\n&amp;lt;p&amp;gt;When the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt; &amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;, Drop-in redirects your shopper to another website to complete the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;After completing the payment, the shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with an HTTP GET. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-raw\\\\&amp;quot;&amp;gt;GET \\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\/1.1\\\\nHost: www.your-company.example.com\\\\\\\/checkout&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; and pass it to your server.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your website, wait for the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook&amp;lt;\\\\\\\/a&amp;gt; to know the payment result.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v67&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67-actions_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v67&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v66 and earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;&amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Next steps&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;voucher&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Drop-in shows the voucher which the shopper &amp;lt;br&amp;gt; uses to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;Get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Drop-in redirects the shopper to another website or app to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. When the shopper returns to your website, your server needs to &amp;lt;a href=\\\\&amp;quot;?tab=v66-actions_1#handle-the-redirect-result\\\\&amp;quot;&amp;gt;handle the redirect result&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;qrCode&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Drop-in presents the QR code &amp;lt;br&amp;gt; and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;await&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Drop-in shows the waiting screen while the shopper completes the payment. &amp;lt;br&amp;gt; Depending on the payment outcome, Drop-in calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;onError&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; object from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;onError&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;sdk&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Drop-in presents the specific payment method&amp;#039;s UI as an overlay &amp;lt;br&amp;gt; and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;threeDS2Fingerprint&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The payment qualifies for 3D Secure 2,  and will go through either the frictionless or the challenge flow.  &amp;lt;br&amp;gt; Drop-in performs the authentication flow, and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2 &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;threeDS2Challenge&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The payment qualifies for 3D Secure 2, and the issuer is initiating a challenge flow.  &amp;lt;br&amp;gt; Drop-in performs the authentication flow, and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;h3 id=\\\\&amp;quot;handle-the-redirect\\\\&amp;quot;&amp;gt;Handle the redirect result&amp;lt;\\\\\\\/h3&amp;gt;\\\\n&amp;lt;p&amp;gt;When the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt; &amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;, Drop-in redirects your shopper to another website to complete the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;The redirect result depends on whether it is for a &amp;lt;a href=\\\\&amp;quot;#redirect\\\\&amp;quot;&amp;gt;redirect payment method&amp;lt;\\\\\\\/a&amp;gt;, or for &amp;lt;a href=\\\\&amp;quot;#3ds\\\\&amp;quot;&amp;gt;3D Secure authentication&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4 id=\\\\&amp;quot;redirect\\\\&amp;quot;&amp;gt;Redirect payment method&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with an HTTP GET. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-raw\\\\&amp;quot;&amp;gt;GET \\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\/1.1\\\\nHost: www.your-company.example.com\\\\\\\/checkout&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; and pass it to your server.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your website, wait for the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook&amp;lt;\\\\\\\/a&amp;gt; to know the payment result.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4 id=\\\\&amp;quot;3ds\\\\&amp;quot;&amp;gt;3D Secure authentication&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with an HTTP POST. This will be appended with the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; variables.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-raw\\\\&amp;quot;&amp;gt;POST \\\\\\\/ HTTP\\\\\\\/1.1\\\\nHost: www.your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\nContent-Type: application\\\\\\\/x-www-form-urlencoded\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; parameters, and pass these to your server.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your website, wait for the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook&amp;lt;\\\\\\\/a&amp;gt; to know the payment result.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v66&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66-actions_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v66&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;182a76dc032fd64863becfb462c70194&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If the shopper performed additional action, you need to submit additional payment details to either complete the payment, or to check the payment result.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabSbjlM70993\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;70993&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v67 and later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Make a  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; request, and include:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;For &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;, pass in your request:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;details&amp;lt;\\\\\\\/code&amp;gt;: Object that contains the URL-decoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;qrCode&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;await&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;sdk&amp;lt;\\\\\\\/strong&amp;gt;, or &amp;lt;strong&amp;gt;threeDS2&amp;lt;\\\\\\\/strong&amp;gt;, pass in your request the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;p&amp;gt;The following example shows how to submit additional payment details in case of a redirect.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;\\\\\\\/payments\\\\\\\/details request&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;payment-details&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;curl&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkout-test.adyen.com\\\\\\\\\\\\\\\/v72\\\\\\\\\\\\\\\/payments\\\\\\\\\\\\\\\/details \\\\\\\\\\\\\\\\\\\\\\\\n-H &amp;#039;x-api-key: ADYEN_API_KEY&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n-H &amp;#039;content-type: application\\\\\\\\\\\\\\\/json&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n-d &amp;#039;{\\\\\\\\n     \\\\\\\\&amp;amp;quot;details\\\\\\\\&amp;amp;quot;: {\\\\\\\\n       \\\\\\\\&amp;amp;quot;redirectResult\\\\\\\\&amp;amp;quot;: \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n   }\\\\\\\\n}&amp;#039;&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;java&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Java&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;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(\\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;, Environment.TEST);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\nPaymentCompletionDetails paymentCompletionDetails = new PaymentCompletionDetails()\\\\\\\\n  .redirectResult(\\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;);\\\\\\\\n\\\\\\\\nPaymentDetailsRequest paymentDetailsRequest = new PaymentDetailsRequest()\\\\\\\\n  .details(paymentCompletionDetails);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nPaymentsApi service = new PaymentsApi(client);\\\\\\\\nPaymentDetailsResponse response = service.paymentsDetails(paymentDetailsRequest, new RequestOptions().idempotencyKey(\\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot;));&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;PHP&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Adyen PHP API Library v19.0.0\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Client;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Environment;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentCompletionDetails;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentDetailsRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n$client = new Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(\\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;);\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\n$client-&amp;amp;gt;setEnvironment(Environment::TEST);\\\\\\\\n\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\n$paymentCompletionDetails = new PaymentCompletionDetails();\\\\\\\\n$paymentCompletionDetails\\\\\\\\n  -&amp;amp;gt;setRedirectResult(\\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;);\\\\\\\\n\\\\\\\\n$paymentDetailsRequest = new PaymentDetailsRequest();\\\\\\\\n$paymentDetailsRequest\\\\\\\\n  -&amp;amp;gt;setDetails($paymentCompletionDetails);\\\\\\\\n\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = &amp;#039;UUID&amp;#039;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\n$service = new PaymentsApi($client);\\\\\\\\n$response = $service-&amp;amp;gt;paymentsDetails($paymentDetailsRequest, $requestOptions);&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;cs&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;C#&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;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 = \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;,\\\\\\\\n    Environment = Environment.Test\\\\\\\\n};\\\\\\\\nvar client = new Client(config);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\nPaymentCompletionDetails paymentCompletionDetails = new PaymentCompletionDetails\\\\\\\\n{\\\\\\\\n  RedirectResult = \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n};\\\\\\\\n\\\\\\\\nPaymentDetailsRequest paymentDetailsRequest = new PaymentDetailsRequest\\\\\\\\n{\\\\\\\\n  Details = paymentCompletionDetails\\\\\\\\n};\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nvar service = new PaymentsService(client);\\\\\\\\nvar response = service.PaymentsDetails(paymentDetailsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot;});&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;NodeJS (JavaScript)&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Adyen Node API Library v18.0.0\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use\\\\\\\\nconst { Client, CheckoutAPI } = require(&amp;#039;@adyen\\\\\\\\\\\\\\\/api-library&amp;#039;);\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Initialize the client object\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nconst client = new Client({apiKey: \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;, environment: \\\\\\\\&amp;amp;quot;TEST\\\\\\\\&amp;amp;quot;});\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\nconst paymentDetailsRequest = {\\\\\\\\n  details: {\\\\\\\\n    redirectResult: \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n  }\\\\\\\\n}\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot; });&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;go&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Go&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Adyen Go API Library v10.4.0\\\\\\\\nimport (\\\\\\\\n  \\\\\\\\&amp;amp;quot;context\\\\\\\\&amp;amp;quot;\\\\\\\\n  \\\\\\\\&amp;amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/v9\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\&amp;amp;quot;\\\\\\\\n  \\\\\\\\&amp;amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/v9\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\&amp;amp;quot;\\\\\\\\n  \\\\\\\\&amp;amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/v9\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\&amp;amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n  ApiKey:      \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;,\\\\\\\\n  Environment: common.TestEnv,\\\\\\\\n})\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\npaymentCompletionDetails := checkout.PaymentCompletionDetails{\\\\\\\\n  RedirectResult: common.PtrString(\\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;),\\\\\\\\n}\\\\\\\\n\\\\\\\\npaymentDetailsRequest := checkout.PaymentDetailsRequest{\\\\\\\\n  Details: paymentCompletionDetails,\\\\\\\\n}\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nservice := client.Checkout()\\\\\\\\nreq := service.PaymentsApi.PaymentsDetailsInput().IdempotencyKey(\\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot;).PaymentDetailsRequest(paymentDetailsRequest)\\\\\\\\nres, httpRes, err := service.PaymentsApi.PaymentsDetails(context.Background(), req)&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;py&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Python&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;# Adyen Python API Library v12.5.1\\\\\\\\nimport Adyen\\\\\\\\n\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;\\\\\\\\n# For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nadyen.client.platform = \\\\\\\\&amp;amp;quot;test\\\\\\\\&amp;amp;quot; # The environment to use library in.\\\\\\\\n\\\\\\\\n# Create the request object(s)\\\\\\\\njson_request = {\\\\\\\\n  \\\\\\\\&amp;amp;quot;details\\\\\\\\&amp;amp;quot;: {\\\\\\\\n    \\\\\\\\&amp;amp;quot;redirectResult\\\\\\\\&amp;amp;quot;: \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n  }\\\\\\\\n}\\\\\\\\n\\\\\\\\n# Send the request\\\\\\\\nresult = adyen.checkout.payments_api.payments_details(request=json_request, idempotency_key=\\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot;)&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;rb&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Ruby&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;# Adyen Ruby API Library v9.5.1\\\\\\\\nrequire \\\\\\\\&amp;amp;quot;adyen-ruby-api-library\\\\\\\\&amp;amp;quot;\\\\\\\\n\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\n# For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nadyen.env = :test # Set to \\\\\\\\&amp;amp;quot;live\\\\\\\\&amp;amp;quot; for live environment\\\\\\\\n\\\\\\\\n# Create the request object(s)\\\\\\\\nrequest_body = {\\\\\\\\n  :details =&amp;amp;gt; {\\\\\\\\n    :redirectResult =&amp;amp;gt; &amp;#039;eyJ0cmFuc1N0YXR1cyI6IlkifQ==&amp;#039;\\\\\\\\n  }\\\\\\\\n}\\\\\\\\n\\\\\\\\n# Send the request\\\\\\\\nresult = adyen.checkout.payments_api.payments_details(request_body, headers: { &amp;#039;Idempotency-Key&amp;#039; =&amp;amp;gt; &amp;#039;UUID&amp;#039; })&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ts&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;NodeJS (TypeScript)&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Adyen Node API Library v18.0.0\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use\\\\\\\\nimport { Client, CheckoutAPI, Types } from \\\\\\\\&amp;amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Initialize the client object\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nconst client = new Client({apiKey: \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;, environment: \\\\\\\\&amp;amp;quot;TEST\\\\\\\\&amp;amp;quot;});\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\nconst paymentCompletionDetails: Types.checkout.PaymentCompletionDetails = {\\\\\\\\n  redirectResult: \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n};\\\\\\\\n\\\\\\\\nconst paymentDetailsRequest: Types.checkout.PaymentDetailsRequest = {\\\\\\\\n  details: paymentCompletionDetails\\\\\\\\n};\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot; });&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;The response includes:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;pspReference&amp;lt;\\\\\\\/code&amp;gt;: Our unique identifier for the transaction.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;resultCode&amp;lt;\\\\\\\/code&amp;gt;: Indicates the status of the payment.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v67&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67-payments-details_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v67&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v66 and earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Make a &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; request, and include:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;For &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;, pass in your request:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;details&amp;lt;\\\\\\\/code&amp;gt;: The URL-decoded parameters you received when the shopper returned to your website.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;paymentData&amp;lt;\\\\\\\/code&amp;gt;: The value from the &amp;lt;code&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/code&amp;gt; response that you stored in your server.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;For &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;qrCode&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;await&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;sdk&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;threeDS2Fingerprint&amp;lt;\\\\\\\/strong&amp;gt;, or &amp;lt;strong&amp;gt;threeDS2Challenge&amp;lt;\\\\\\\/strong&amp;gt;, pass in your request the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;p&amp;gt;The following example shows how to submit additional payment details in case you received an &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Depending on the payment result,  you receive a response containing:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;resultCode&amp;lt;\\\\\\\/code&amp;gt;: Provides information about the result of the request.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;pspReference&amp;lt;\\\\\\\/code&amp;gt;: Our unique identifier for the transaction.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt;: If you receive this object, &amp;lt;a href=\\\\&amp;quot;#additional-action\\\\&amp;quot;&amp;gt;handle the additional action&amp;lt;\\\\\\\/a&amp;gt; again.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;p&amp;gt;If the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; response does not contain an &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v66&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66-payments-details_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v66&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Successful payment response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Refused response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n  \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;328f3fb187e17d61c62da0dcf129e881&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After Drop-in finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;\\n  &lt;code&gt;resultCode&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Alternatively, you can use the &lt;code&gt;dropin.setStatus&lt;\\\/code&gt; to show a customized message. For example:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-js\\&quot;&gt;  \\\/\\\/ Show a success message\\n  dropin.setStatus(&#039;success&#039;);\\n  dropin.setStatus(&#039;success&#039;, { message: &#039;Payment successful!&#039; });\\n\\n  \\\/\\\/ Show an error message\\n  dropin.setStatus(&#039;error&#039;);\\n  dropin.setStatus(&#039;error&#039;, { message: &#039;Something went wrong.&#039;});\\n\\n  \\\/\\\/ Set a loading state\\n  dropin.setStatus(&#039;loading&#039;); \\\/\\\/ start the loading state\\n  dropin.setStatus(&#039;ready&#039;); \\\/\\\/ set back to the initial state&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;h2 id=\\&quot;error-handling\\&quot;&gt;Error handling&lt;\\\/h2&gt;\\n&lt;p&gt;In case you encounter errors in your integration, refer to the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/error-codes\\&quot;&gt;API error codes&lt;\\\/a&gt;: If you receive a non-HTTP 200 response, use the &lt;code&gt;errorCode&lt;\\\/code&gt; to troubleshoot and modify your request.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/refusal-reasons\\&quot;&gt;Payment refusals&lt;\\\/a&gt;: If you receive an HTTP 200 response with an &lt;strong&gt;Error&lt;\\\/strong&gt; or &lt;strong&gt;Refused&lt;\\\/strong&gt; &lt;code&gt;resultCode&lt;\\\/code&gt;, check the refusal reason and, if possible, modify your request.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h2 id=\\&quot;testing-your-integration\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?=1#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;Load Drop-in from one of our live environments and set the &lt;code&gt;environment&lt;\\\/code&gt; to match your live endpoints:&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;environment&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-au&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;US&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-us&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Asia Pacific South East&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-apse&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;d9b11f0dacb1601c5ca715306a02a626&quot;:&quot;&lt;h2 id=\\&quot;see-also\\&quot;&gt;See also&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;see-also-links output-inline\\&quot; id=\\&quot;see-also33528\\&quot;&gt;\\n&lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    Tokenization\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    3D Secure\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    PCI DSS compliance guide\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/uplift\\\/uplift-requirements\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    Adyen Uplift requirements and recommendations\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/div&gt;\\n&quot;,&quot;8042ebe5d4e577ca8316d439b83df001&quot;:&quot;&lt;h2 id=\\&quot;next-steps\\&quot;&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps39187\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Modify payments&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods#add-payment-methods-to-your-account\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Tokenization&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Save shopper payment details for later payments.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;97082b3a7739497f6252320b93de3817&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;Configuring Drop-in&lt;\\\/h3&gt;\\n&lt;p&gt;Drop-in accepts the following props.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;openFirstPaymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;When enabled, Drop-in opens the first payment method automatically on page load. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;openFirstStoredPaymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;When enabled, Drop-in opens the payment method with stored card details on page load. This option takes precedence over &lt;code&gt;openFirstPaymentMethod&lt;\\\/code&gt;. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showStoredPaymentMethods&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Shows or hides payment methods with stored card details. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showRemovePaymentMethodButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Allows the shopper to remove a stored payment method. Defaults to &lt;strong&gt;false&lt;\\\/strong&gt;. &lt;br&gt; If using this prop, you must also implement the &lt;code&gt;onDisableStoredPaymentMethod&lt;\\\/code&gt; callback.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPaymentMethods&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Shows or hides regular (not stored) payment methods. Set to &lt;strong&gt;false&lt;\\\/strong&gt;  if you only want to show payment methods with stored card details. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Show or hides a &lt;strong&gt;Pay&lt;\\\/strong&gt; Button for each payment method. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;. The &lt;strong&gt;Pay&lt;\\\/strong&gt; button triggers the &lt;code&gt;onSubmit&lt;\\\/code&gt; event when payment details are valid. &lt;br&gt; &lt;p&gt;&lt;\\\/p&gt; If you want to disable the button and then trigger the submit flow on your own, set this to &lt;strong&gt;false&lt;\\\/strong&gt; and call the &lt;code&gt;.submit()&lt;\\\/code&gt; method from your own button implementation. For example, &lt;code&gt;dropin.submit()&lt;\\\/code&gt;&lt;p&gt;&lt;\\\/p&gt; Note that PayPal Smart Payment Buttons doesn&#039;t support the &lt;code&gt;.submit()&lt;\\\/code&gt; method.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;setStatusAutomatically&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Set to &lt;strong&gt;false&lt;\\\/strong&gt; to not set the Drop-in status to &lt;code&gt;&#039;loading&#039;&lt;\\\/code&gt; when &lt;code&gt;onSubmit&lt;\\\/code&gt; is triggered. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;54ec8425e70e7998c287d4f50d7ca84a&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Drop-in to your payments form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Next, use Drop-in to show the available payment methods, and to collect payment details from your shopper. Install the Adyen Web Node package or use a &lt;code&gt;&amp;lt;script&amp;gt;&lt;\\\/code&gt; tag.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabNlibX63338\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;63338&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;npm (recommended)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Install the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/package\\\\\\\/@adyen\\\\\\\/adyen-web\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Adyen Web Node package&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install @adyen\\\\\\\\\\\\\\\/adyen-web --save\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Import Adyen Web into your application:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;import { AdyenCheckout } from &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web&amp;#039;;\\\\\\\\nimport &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web\\\\\\\\\\\\\\\/styles\\\\\\\\\\\\\\\/adyen.css&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;npm_(recommended)_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Embed script and stylesheet&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Include the following script in the\\\\u00a0&amp;lt;code&amp;gt;&amp;amp;lt;body&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;\\\\u00a0above any other JavaScript in your checkout page:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;We recommend that you also validate the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/web-best-practices#implement-subresource-integrity-hashes\\\\&amp;quot;&amp;gt;Subresource Integrity (SRI) hash&amp;lt;\\\\\\\/a&amp;gt;, which we provide for each version of our JavaScript and CSS files. You can find the SRI hashes in our &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/release-notes\\\\&amp;quot;&amp;gt;release notes&amp;lt;\\\\\\\/a&amp;gt;, under &amp;lt;strong&amp;gt;Updating to this version&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;script src=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.js\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-KF6Y8NQXGnIuzqJn5rcqCe6dMy7gBWobcIKr1BmIaz6pOeBAV0hrHBBMbHC\\\\\\\/inHu\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;&amp;amp;lt;\\\\\\\/script&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute.--&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Use the following CSS file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;link rel=\\\\&amp;quot;stylesheet\\\\&amp;quot; href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.css\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-uwMmo3xJR0e9jI+Oi5kzu43ShY0pXrb3auIlCjLjMNtl0X8Nat55eXNqwj8xU6H9\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute. --&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;embed_script_and_stylesheet_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;&amp;emsp;&amp;emsp;&amp;nbsp;You can &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;add your own styling&lt;\\\/a&gt; by overriding the rules in this CSS file.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a DOM element on your checkout page, placing it where you want Drop-in to be rendered on the page.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-html\\&quot;&gt;&amp;lt;div id=\\&quot;dropin-container\\&quot;&amp;gt;&amp;lt;\\\/div&amp;gt;&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;If you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;init-drop-in\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;4\\&quot;&gt;\\n&lt;li&gt;Create a &lt;code&gt;configuration&lt;\\\/code&gt; object with the following parameters:&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response returned &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;when you get available payment methods&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;locale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. This is used to set the language rendered in the UI. For a list of supported locales, see\\u00a0&lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;Language and localization&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/drop-in-web#testing-your-integration\\&quot;&gt;live environments&lt;\\\/a&gt;.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit(state, dropin)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button and payment details are valid.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onChange(state, dropin)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the shopper provides the required payment details.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails(state, dropin)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when a payment method requires more details, for example for native 3D Secure 2, or native QR code payment methods.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onError(error)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when an error occurs in Drop-in.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsConfiguration&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Required or optional configuration for specific payment methods. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guides&lt;\\\/a&gt;. &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Amount to be displayed on the &lt;strong&gt;Pay&lt;\\\/strong&gt; Button. It expects an object with the value and currency properties. For example, &lt;code&gt;{ value: 1000, currency: &#039;USD&#039; }&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create a configuration object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const configuration = {\\\\n    paymentMethodsResponse: paymentMethodsResponse, \\\\\\\/\\\\\\\/ The `\\\\\\\/paymentMethods` response from the server.\\\\n    clientKey: \\\\&amp;quot;YOUR_CLIENT_KEY\\\\&amp;quot;, \\\\\\\/\\\\\\\/ Web Drop-in versions before 3.10.1 use originKey instead of clientKey.\\\\n    locale: \\\\&amp;quot;en-US\\\\&amp;quot;,\\\\n    environment: \\\\&amp;quot;test\\\\&amp;quot;,\\\\n    analytics: {\\\\n      enabled: true \\\\\\\/\\\\\\\/ Set to false to not send analytics data to Adyen.\\\\n    },\\\\n    onSubmit: (state, dropin) =&amp;gt; {\\\\n        \\\\\\\/\\\\\\\/ Global configuration for onSubmit\\\\n        \\\\\\\/\\\\\\\/ Your function calling your server to make the `\\\\\\\/payments` request\\\\n        makePayment(state.data)\\\\n          .then(response =&amp;gt; {\\\\n            if (response.action) {\\\\n              \\\\\\\/\\\\\\\/ Drop-in handles the action object from the \\\\\\\/payments response\\\\n              dropin.handleAction(response.action);\\\\n            } else {\\\\n              \\\\\\\/\\\\\\\/ Your function to show the final result to the shopper\\\\n              showFinalResult(response);\\\\n            }\\\\n          })\\\\n          .catch(error =&amp;gt; {\\\\n            throw Error(error);\\\\n          });\\\\n      },\\\\n    onAdditionalDetails: (state, dropin) =&amp;gt; {\\\\n      \\\\\\\/\\\\\\\/ Your function calling your server to make a `\\\\\\\/payments\\\\\\\/details` request\\\\n      makeDetailsCall(state.data)\\\\n        .then(response =&amp;gt; {\\\\n          if (response.action) {\\\\n            \\\\\\\/\\\\\\\/ Drop-in handles the action object from the \\\\\\\/payments response\\\\n            dropin.handleAction(response.action);\\\\n          } else {\\\\n            \\\\\\\/\\\\\\\/ Your function to show the final result to the shopper\\\\n            showFinalResult(response);\\\\n          }\\\\n        })\\\\n        .catch(error =&amp;gt; {\\\\n          throw Error(error);\\\\n        });\\\\n    },\\\\n    paymentMethodsConfiguration: {\\\\n      card: { \\\\\\\/\\\\\\\/ Example optional configuration for Cards\\\\n        hasHolderName: true,\\\\n        holderNameRequired: true,\\\\n        enableStoreDetails: true,\\\\n        hideCVC: false, \\\\\\\/\\\\\\\/ Change this to true to hide the CVC field for stored cards\\\\n        name: &#039;Credit or debit card&#039;,\\\\n        onSubmit: () =&amp;gt; {}, \\\\\\\/\\\\\\\/ onSubmit configuration for card payments. Overrides the global configuration.\\\\n      }\\\\n    }\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol start=\\&quot;5\\&quot;&gt;\\n&lt;li&gt;Use the &lt;code&gt;configuration&lt;\\\/code&gt; object to create an instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;:&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create an instance of AdyenCheckout&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;const checkout = await AdyenCheckout(configuration);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol start=\\&quot;6\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use the returned value to create and mount an instance of Drop-in. Drop-in also accepts &lt;a href=\\&quot;#configure\\&quot;&gt;props related to itself&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-js\\&quot;&gt;const dropin = checkout\\n  .create(&#039;dropin&#039;, {\\n  \\\/\\\/ Starting from version 4.0.0, Drop-in configuration only accepts props related to itself and cannot contain generic configuration like the onSubmit event.\\n      openFirstPaymentMethod:false\\n  })\\n .mount(&#039;#dropin-container&#039;);&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, Drop-in calls the &lt;code&gt;onSubmit&lt;\\\/code&gt; event, which contains a &lt;code&gt;state.data&lt;\\\/code&gt;. These are the shopper details that you need to make the payment.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;6\\&quot;&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Sample state from onSubmit event for a card payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    isValid: true,\\\\n    data: {\\\\n      paymentMethod: {\\\\n        type: \\\\\\&quot;scheme\\\\\\&quot;,\\\\n        encryptedCardNumber: \\\\\\&quot;adyenjs_0_1_18$k7s65M5V0KdPxTErhBIPoMPI8HlC..\\\\\\&quot;,\\\\n        encryptedExpiryMonth: \\\\\\&quot;adyenjs_0_1_18$p2OZxW2XmwAA8C1Avxm3G9UB6e4..\\\\\\&quot;,\\\\n        encryptedExpiryYear: \\\\\\&quot;adyenjs_0_1_18$CkCOLYZsdqpxGjrALWHj3QoGHqe+..\\\\\\&quot;,\\\\n        encryptedSecurityCode: \\\\\\&quot;adyenjs_0_1_18$XUyMJyHebrra\\\\\\\/TpSda9fha978+..\\\\\\&quot;\\\\n        holderName: \\\\\\&quot;S. Hopper\\\\\\&quot;\\\\n      }\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;0ca6c63e52ac8960498450eb0acd40ca&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper submits their payment details or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a  &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;state.data.paymentMethod&lt;\\\/code&gt; from the &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client website.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;URL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;. You can also include your own additional query parameters, for example, shopper ID or order reference number.  &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;riskData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/risk-management\\\/fraud-data-collection\\&quot;&gt;Device characteristics and other data&lt;\\\/a&gt; that we use to detect fraudulent payment activity, and mitigate fraud.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-web-earlier&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n\\\\t    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n\\\\t   \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nRiskData riskData = new RiskData()\\\\n  .clientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  .riskData(riskData);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\RiskData;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$riskData = new RiskData();\\\\n$riskData\\\\n  -&amp;gt;setClientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  -&amp;gt;setRiskData($riskData);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.2\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nRiskData riskData = new RiskData\\\\n{\\\\n  ClientData = \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData = riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: {\\\\n    type: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: {\\\\n    clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\nriskData := checkout.RiskData{\\\\n  ClientData: common.PtrString(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData: &amp;amp;riskData,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;,\\\\n  :riskData =&amp;gt; {\\\\n    :clientData =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==&#039;\\\\n  },\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst riskData: Types.checkout.RiskData = {\\\\n  clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with a redirect action&#039;\\&quot; :id=\\&quot;&#039;v67-redirect-response&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?...\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;dd0b6e7956c858a6c70a9341e0d0f4d3&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;To handle the additional action:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Pass the &lt;code&gt;action&lt;\\\/code&gt; object from your server to the &lt;code&gt;dropin.handleAction&lt;\\\/code&gt; function.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in performs the additional action on the client side.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;You handle the payment data, depending on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;).&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, Drop-in redirects your shopper to another website to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper returns to your website, they are returned to your &lt;code&gt;returnUrl&lt;\\\/code&gt; with an HTTP GET request. The &lt;code&gt;returnUrl&lt;\\\/code&gt; is appended with a Base64-encoded &lt;code&gt;redirectResult&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example return URL&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;raw\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;GET \\\\\\\/?shopperOrder=12xy..&amp;amp;&amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\/1.1\\\\nHost: www.your-company.example.com\\\\\\\/checkout\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;If the shopper fails to return to your website, you do not get the &lt;code&gt;redirectResult&lt;\\\/code&gt;. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;To process the result:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Get the &lt;code&gt;redirectResult&lt;\\\/code&gt; appended to your return URL. You do not need to decode it.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;redirectResult&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example JavaScript code snippet to handle redirectResult&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;function handleRedirectResult() {\\\\n\\\\n  \\\\\\\/\\\\\\\/ 1. Get the redirectResult from your return URL.\\\\n  const urlParams = new URLSearchParams(window.location.search);\\\\n  const redirectResult = urlParams.get(&#039;redirectResult&#039;);\\\\n\\\\n  if (redirectResult) {\\\\n    \\\\\\\/\\\\\\\/ 2. Pass the redirectResult to your server.\\\\n    \\\\\\\/\\\\\\\/ 3. Your server makes the \\\\\\\/payments\\\\\\\/details request. Adyen&#039;s server processes the encoded redirectResult value.\\\\n    fetch(&#039;\\\\\\\/api\\\\\\\/handle-payment-redirect&#039;, {\\\\n      method: &#039;POST&#039;,\\\\n      headers: {\\\\n        &#039;Content-Type&#039;: &#039;application\\\\\\\/json&#039;,\\\\n      },\\\\n      body: JSON.stringify({ redirectResult: redirectResult }),\\\\n    })\\\\n    .then(response =&amp;gt; response.json())\\\\n    .then(data =&amp;gt; {\\\\n      \\\\\\\/\\\\\\\/ Verify the resultCode from your server&#039;s response.\\\\n      if (data &amp;amp;&amp;amp; data.resultCode === &#039;Authorised&#039;) {\\\\n        console.log(&#039;Payment authorized successfully!&#039;);\\\\n        \\\\\\\/\\\\\\\/ Handle successful payment authorization. For example: show a confirmation message or redirect the shopper to a confirmation page.\\\\n      } else {\\\\n        console.log(&#039;Payment failed or denied.&#039;);\\\\n        \\\\\\\/\\\\\\\/ Handle payment failure. For example: show an error message or redirect the shopper to an error page.\\\\n      }\\\\n    })\\\\n    .catch(error =&amp;gt; {\\\\n      console.error(&#039;Error sending redirect result or processing server response:&#039;, error);\\\\n      \\\\\\\/\\\\\\\/ Handle network errors or issues with server communication.\\\\n    });\\\\n  }\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Call this function when your page loads.\\\\nhandleRedirectResult();&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows the QR code to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper scans the QR code to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;2\\&quot;&gt;\\n&lt;li&gt;Drop-in shows a different UI in an overlay.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper uses the UI overlay to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows the voucher to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper uses the voucher to pay outside of your website.&lt;\\\/li&gt;\\n&lt;li&gt;You &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows the instructions for the additional action to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper does the additional action.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt; or &lt;code&gt;onError&lt;\\\/code&gt;, depending on the result of the additional action.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; or &lt;code&gt;onError&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;1f40cdb2b4740461769998c17a75f124&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your website, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass additional payment details to your server, depending on the action you handled:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If you handled a redirect: pass the &lt;code&gt;redirectResult&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;If you handled a non-redirect additional action: pass the complete &lt;code&gt;state.data&lt;\\\/code&gt; object from the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request including the &lt;code&gt;redirectResult&lt;\\\/code&gt; or the full &lt;code&gt;state.data&lt;\\\/code&gt; object, depending on the action you handled.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to send additional payment details&#039;\\&quot; :id=\\&quot;&#039;details-request-component&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{hint:object passed from your client app}STATE_DATA{\\\\\\\/hint}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nString xApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nClient client = new Client(xApiKey,Environment.TEST);\\\\nCheckout checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nPaymentsDetailsRequest paymentsDetailsRequest = STATE_DATA;\\\\nPaymentsResponse paymentsDetailsResponse = checkout.paymentsDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\n$params = STATE_DATA;\\\\n$result = $service-&amp;gt;paymentsDetails($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed.\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from the client app, deserialized from JSON to a data structure.\\\\nvar paymentsDetailsRequest = STATE_DATA;\\\\nvar paymentsDetailsResponse = checkout.PaymentDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;[ADYEN_API_KEY]&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\ncheckout.paymentsDetails(STATE_DATA).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;[ADYEN_API_KEY]\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nreq := STATE_DATA;\\\\nres, httpRes, err := client.Checkout.PaymentsDetails(&amp;amp;req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresult = adyen.checkout.payments_details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresponse = adyen.checkout.payments.details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client\\\\n   puts response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode to your client\\\\n   puts response.body[:resultCode]\\\\nend&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response from your server to your client app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;e5c37ea184e49bca9daf40b2cc57c6d1&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Drop-in to your payments form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Next, use Drop-in to show the available payment methods, and to collect payment details from your shopper. Install the Adyen Web Node package or use a &lt;code&gt;&amp;lt;script&amp;gt;&lt;\\\/code&gt; tag.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabdrKyg18763\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;18763&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;npm (recommended)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Install the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/package\\\\\\\/@adyen\\\\\\\/adyen-web\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Adyen Web Node package&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install @adyen\\\\\\\\\\\\\\\/adyen-web --save\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Import Adyen Web into your application:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;import { AdyenCheckout } from &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web&amp;#039;;\\\\\\\\nimport &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web\\\\\\\\\\\\\\\/styles\\\\\\\\\\\\\\\/adyen.css&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;npm_(recommended)_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Embed script and stylesheet&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Include the following script in the\\\\u00a0&amp;lt;code&amp;gt;&amp;amp;lt;body&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;\\\\u00a0above any other JavaScript in your checkout page:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;We recommend that you also validate the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/web-best-practices#implement-subresource-integrity-hashes\\\\&amp;quot;&amp;gt;Subresource Integrity (SRI) hash&amp;lt;\\\\\\\/a&amp;gt;, which we provide for each version of our JavaScript and CSS files. You can find the SRI hashes in our &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/release-notes\\\\&amp;quot;&amp;gt;release notes&amp;lt;\\\\\\\/a&amp;gt;, under &amp;lt;strong&amp;gt;Updating to this version&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;script src=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.js\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-KF6Y8NQXGnIuzqJn5rcqCe6dMy7gBWobcIKr1BmIaz6pOeBAV0hrHBBMbHC\\\\\\\/inHu\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;&amp;amp;lt;\\\\\\\/script&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute.--&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Use the following CSS file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;link rel=\\\\&amp;quot;stylesheet\\\\&amp;quot; href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.css\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-uwMmo3xJR0e9jI+Oi5kzu43ShY0pXrb3auIlCjLjMNtl0X8Nat55eXNqwj8xU6H9\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute. --&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;embed_script_and_stylesheet_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;&amp;emsp;&amp;emsp;&amp;nbsp;You can &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;add your own styling&lt;\\\/a&gt; by overriding the rules in this CSS file.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a DOM element on your checkout page, placing it where you want Drop-in to be rendered on the page.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-html\\&quot;&gt;&amp;lt;div id=\\&quot;dropin-container\\&quot;&amp;gt;&amp;lt;\\\/div&amp;gt;&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;If you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;init-drop-in\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;4\\&quot;&gt;\\n&lt;li&gt;Create a &lt;code&gt;configuration&lt;\\\/code&gt; object with the following parameters:&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response returned &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;when you get available payment methods&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;. &lt;br&gt; Web Drop-in versions before 3.10.1 use &lt;code&gt;originKey&lt;\\\/code&gt; instead. Find out how to &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\\/migrate-from-origin-key-to-client-key\\&quot;&gt;migrate from using &lt;code&gt;originKey&lt;\\\/code&gt; to &lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;locale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. This is used to set the language rendered in the UI. For a list of supported locales, see\\u00a0&lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;Language and localization&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/drop-in-web#testing-your-integration\\&quot;&gt;live environments&lt;\\\/a&gt;.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit(state, dropin)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button and payment details are valid.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onChange(state, dropin)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the shopper provides the required payment details.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails(state, dropin)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when a payment method requires more details, for example for native 3D Secure 2, or native QR code payment methods.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onError(error)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when an error occurs in Drop-in.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsConfiguration&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Required or optional configuration for specific payment methods. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guides&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Amount to be displayed on the &lt;strong&gt;Pay&lt;\\\/strong&gt; Button. It expects an object with the value and currency properties. For example, &lt;code&gt;{ value: 1000, currency: &#039;USD&#039; }&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;analytics.enabled&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Indicates if you are sending &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking\\&quot;&gt;analytics data&lt;\\\/a&gt; to Adyen. Default: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-js\\&quot;&gt; const configuration = {\\n     paymentMethodsResponse: paymentMethodsResponse, \\\/\\\/ The `\\\/paymentMethods` response from the server.\\n     clientKey: \\&quot;YOUR_CLIENT_KEY\\&quot;, \\\/\\\/ Web Drop-in versions before 3.10.1 use originKey instead of clientKey.\\n     locale: \\&quot;en-US\\&quot;,\\n     environment: \\&quot;test\\&quot;,\\n     analytics: {\\n       enabled: true \\\/\\\/ Set to false to not send analytics data to Adyen.\\n     },\\n     onSubmit: (state, dropin) =&amp;gt; {\\n         \\\/\\\/ Global configuration for onSubmit\\n         \\\/\\\/ Your function calling your server to make the `\\\/payments` request\\n         makePayment(state.data)\\n           .then(response =&amp;gt; {\\n             if (response.action) {\\n               \\\/\\\/ Drop-in handles the action object from the \\\/payments response\\n               dropin.handleAction(response.action);\\n             } else {\\n               \\\/\\\/ Your function to show the final result to the shopper\\n               showFinalResult(response);\\n             }\\n           })\\n           .catch(error =&amp;gt; {\\n             throw Error(error);\\n           });\\n       },\\n     onAdditionalDetails: (state, dropin) =&amp;gt; {\\n       \\\/\\\/ Your function calling your server to make a `\\\/payments\\\/details` request\\n       makeDetailsCall(state.data)\\n         .then(response =&amp;gt; {\\n           if (response.action) {\\n             \\\/\\\/ Drop-in handles the action object from the \\\/payments response\\n             dropin.handleAction(response.action);\\n           } else {\\n             \\\/\\\/ Your function to show the final result to the shopper\\n             showFinalResult(response);\\n           }\\n         })\\n         .catch(error =&amp;gt; {\\n           throw Error(error);\\n         });\\n     },\\n     paymentMethodsConfiguration: {\\n       card: { \\\/\\\/ Example optional configuration for Cards\\n         hasHolderName: true,\\n         holderNameRequired: true,\\n         enableStoreDetails: true,\\n         hideCVC: false, \\\/\\\/ Change this to true to hide the CVC field for stored cards\\n         name: &#039;Credit or debit card&#039;,\\n         onSubmit: () =&amp;gt; {}, \\\/\\\/ onSubmit configuration for card payments. Overrides the global configuration.\\n       }\\n     }\\n };&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;ol start=\\&quot;5\\&quot;&gt;\\n&lt;li&gt;Use the &lt;code&gt;configuration&lt;\\\/code&gt; object to create an instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;:&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create an instance of AdyenCheckout&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;const checkout = await AdyenCheckout(configuration);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol start=\\&quot;6\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use the returned value to create and mount an instance of Drop-in. Drop-in also accepts &lt;a href=\\&quot;#configure\\&quot;&gt;props related to itself&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-js\\&quot;&gt;const dropin = checkout\\n  .create(&#039;dropin&#039;, {\\n  \\\/\\\/ Starting from version 4.0.0, Drop-in configuration only accepts props related to itself and cannot contain generic configuration like the onSubmit event.\\n      openFirstPaymentMethod:false\\n  })\\n .mount(&#039;#dropin-container&#039;);&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, Drop-in calls the &lt;code&gt;onSubmit&lt;\\\/code&gt; event, which contains a &lt;code&gt;state.data&lt;\\\/code&gt;. These are the shopper details that you need to make the payment.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;7\\&quot;&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Sample state from onSubmit event for a card payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    isValid: true,\\\\n    data: {\\\\n      paymentMethod: {\\\\n        type: \\\\\\&quot;scheme\\\\\\&quot;,\\\\n        encryptedCardNumber: \\\\\\&quot;adyenjs_0_1_18$k7s65M5V0KdPxTErhBIPoMPI8HlC..\\\\\\&quot;,\\\\n        encryptedExpiryMonth: \\\\\\&quot;adyenjs_0_1_18$p2OZxW2XmwAA8C1Avxm3G9UB6e4..\\\\\\&quot;,\\\\n        encryptedExpiryYear: \\\\\\&quot;adyenjs_0_1_18$CkCOLYZsdqpxGjrALWHj3QoGHqe+..\\\\\\&quot;,\\\\n        encryptedSecurityCode: \\\\\\&quot;adyenjs_0_1_18$XUyMJyHebrra\\\\\\\/TpSda9fha978+..\\\\\\&quot;\\\\n        holderName: \\\\\\&quot;S. Hopper\\\\\\&quot;\\\\n      }\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;4203a4e8eb28cb6f5c63ab0e7cb80e36&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper submits their payment details or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a  &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;state.data.paymentMethod&lt;\\\/code&gt; from the &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client website.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;URL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;. You can also include your own additional query parameters, for example, shopper ID or order reference number.  &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;riskData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/risk-management\\\/fraud-data-collection\\&quot;&gt;Device characteristics and other data&lt;\\\/a&gt; that we use to detect fraudulent payment activity, and mitigate fraud.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;checkoutAttemptId&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt; generated by Drop-in to track the user payment journey.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-web&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n\\\\t    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n\\\\t   \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;checkoutAttemptId\\\\&amp;quot;: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nRiskData riskData = new RiskData()\\\\n  .clientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .checkoutAttemptId(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;)\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  .riskData(riskData);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\RiskData;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$riskData = new RiskData();\\\\n$riskData\\\\n  -&amp;gt;setClientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setCheckoutAttemptId(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  -&amp;gt;setRiskData($riskData);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.2\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nRiskData riskData = new RiskData\\\\n{\\\\n  ClientData = \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  CheckoutAttemptId = \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData = riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: {\\\\n    type: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: {\\\\n    clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  checkoutAttemptId: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\nriskData := checkout.RiskData{\\\\n  ClientData: common.PtrString(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  CheckoutAttemptId: common.PtrString(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData: &amp;amp;riskData,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;checkoutAttemptId\\\\&amp;quot;: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;,\\\\n  :riskData =&amp;gt; {\\\\n    :clientData =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==&#039;\\\\n  },\\\\n  :checkoutAttemptId =&amp;gt; &#039;7m583f18-b533-4fn0...&#039;,\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst riskData: Types.checkout.RiskData = {\\\\n  clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  checkoutAttemptId: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with a redirect action&#039;\\&quot; :id=\\&quot;&#039;v67-redirect-response&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?...\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;7d9fab858b11b0b383e523f8fea38061&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Drop-in to your payments form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Next, use Drop-in to show the available payment methods, and to collect payment details from your shopper. Install the Adyen Web Node package or use a &lt;code&gt;&amp;lt;script&amp;gt;&lt;\\\/code&gt; tag.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabukM7e81743\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;81743&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;npm (recommended)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Install the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/package\\\\\\\/@adyen\\\\\\\/adyen-web\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Adyen Web Node package&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install @adyen\\\\\\\\\\\\\\\/adyen-web --save\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Import Adyen Web into your application:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;import { AdyenCheckout } from &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web&amp;#039;;\\\\\\\\nimport &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web\\\\\\\\\\\\\\\/styles\\\\\\\\\\\\\\\/adyen.css&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;npm_(recommended)_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Embed script and stylesheet&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Include the following script in the\\\\u00a0&amp;lt;code&amp;gt;&amp;amp;lt;body&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;\\\\u00a0above any other JavaScript in your checkout page:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;We recommend that you also validate the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/web-best-practices#implement-subresource-integrity-hashes\\\\&amp;quot;&amp;gt;Subresource Integrity (SRI) hash&amp;lt;\\\\\\\/a&amp;gt;, which we provide for each version of our JavaScript and CSS files. You can find the SRI hashes in our &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/release-notes\\\\&amp;quot;&amp;gt;release notes&amp;lt;\\\\\\\/a&amp;gt;, under &amp;lt;strong&amp;gt;Updating to this version&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;script src=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.js\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-KF6Y8NQXGnIuzqJn5rcqCe6dMy7gBWobcIKr1BmIaz6pOeBAV0hrHBBMbHC\\\\\\\/inHu\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;&amp;amp;lt;\\\\\\\/script&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute.--&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Use the following CSS file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;link rel=\\\\&amp;quot;stylesheet\\\\&amp;quot; href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.css\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-uwMmo3xJR0e9jI+Oi5kzu43ShY0pXrb3auIlCjLjMNtl0X8Nat55eXNqwj8xU6H9\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute. --&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;embed_script_and_stylesheet_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;&amp;emsp;&amp;emsp;&amp;nbsp;You can &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;add your own styling&lt;\\\/a&gt; by overriding the rules in this CSS file.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a DOM element on your checkout page, placing it where you want Drop-in to be rendered on the page.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-html\\&quot;&gt;&amp;lt;div id=\\&quot;dropin-container\\&quot;&amp;gt;&amp;lt;\\\/div&amp;gt;&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;If you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;init-drop-in\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;4\\&quot;&gt;\\n&lt;li&gt;Create a &lt;code&gt;configuration&lt;\\\/code&gt; object with the following parameters:&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response returned &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;when you get available payment methods&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;. &lt;br&gt; Web Drop-in versions before 3.10.1 use &lt;code&gt;originKey&lt;\\\/code&gt; instead. Find out how to &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\\/migrate-from-origin-key-to-client-key\\&quot;&gt;migrate from using &lt;code&gt;originKey&lt;\\\/code&gt; to &lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;locale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. This is used to set the language rendered in the UI. For a list of supported locales, see\\u00a0&lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;Language and localization&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/drop-in-web#testing-your-integration\\&quot;&gt;live environments&lt;\\\/a&gt;.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit(state, dropin)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button and payment details are valid.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onChange(state, dropin)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the shopper provides the required payment details.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails(state, dropin)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when a payment method requires more details, for example for native 3D Secure 2, or native QR code payment methods.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onError(error)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when an error occurs in Drop-in.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsConfiguration&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Required or optional configuration for specific payment methods. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guides&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Amount to be displayed on the &lt;strong&gt;Pay&lt;\\\/strong&gt; Button. It expects an object with the value and currency properties. For example, &lt;code&gt;{ value: 1000, currency: &#039;USD&#039; }&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;analytics.enabled&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Indicates if you are sending &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking\\&quot;&gt;analytics data&lt;\\\/a&gt; to Adyen. Default: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-js\\&quot;&gt; const configuration = {\\n     paymentMethodsResponse: paymentMethodsResponse, \\\/\\\/ The `\\\/paymentMethods` response from the server.\\n     clientKey: \\&quot;YOUR_CLIENT_KEY\\&quot;, \\\/\\\/ Web Drop-in versions before 3.10.1 use originKey instead of clientKey.\\n     locale: \\&quot;en-US\\&quot;,\\n     environment: \\&quot;test\\&quot;,\\n     analytics: {\\n       enabled: true \\\/\\\/ Set to false to not send analytics data to Adyen.\\n     },\\n     onSubmit: (state, dropin) =&amp;gt; {\\n         \\\/\\\/ Global configuration for onSubmit\\n         \\\/\\\/ Your function calling your server to make the `\\\/payments` request\\n         makePayment(state.data)\\n           .then(response =&amp;gt; {\\n             if (response.action) {\\n               \\\/\\\/ Drop-in handles the action object from the \\\/payments response\\n               dropin.handleAction(response.action);\\n             } else {\\n               \\\/\\\/ Your function to show the final result to the shopper\\n               showFinalResult(response);\\n             }\\n           })\\n           .catch(error =&amp;gt; {\\n             throw Error(error);\\n           });\\n       },\\n     onAdditionalDetails: (state, dropin) =&amp;gt; {\\n       \\\/\\\/ Your function calling your server to make a `\\\/payments\\\/details` request\\n       makeDetailsCall(state.data)\\n         .then(response =&amp;gt; {\\n           if (response.action) {\\n             \\\/\\\/ Drop-in handles the action object from the \\\/payments response\\n             dropin.handleAction(response.action);\\n           } else {\\n             \\\/\\\/ Your function to show the final result to the shopper\\n             showFinalResult(response);\\n           }\\n         })\\n         .catch(error =&amp;gt; {\\n           throw Error(error);\\n         });\\n     },\\n     paymentMethodsConfiguration: {\\n       card: { \\\/\\\/ Example optional configuration for Cards\\n         hasHolderName: true,\\n         holderNameRequired: true,\\n         enableStoreDetails: true,\\n         hideCVC: false, \\\/\\\/ Change this to true to hide the CVC field for stored cards\\n         name: &#039;Credit or debit card&#039;,\\n         onSubmit: () =&amp;gt; {}, \\\/\\\/ onSubmit configuration for card payments. Overrides the global configuration.\\n       }\\n     }\\n };&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;ol start=\\&quot;5\\&quot;&gt;\\n&lt;li&gt;Use the &lt;code&gt;configuration&lt;\\\/code&gt; object to create an instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;:&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create an instance of AdyenCheckout&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;const checkout = await AdyenCheckout(configuration);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol start=\\&quot;6\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use the returned value to create and mount an instance of Drop-in. Drop-in also accepts &lt;a href=\\&quot;#configure\\&quot;&gt;props related to itself&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-js\\&quot;&gt;const dropin = checkout\\n  .create(&#039;dropin&#039;, {\\n  \\\/\\\/ Starting from version 4.0.0, Drop-in configuration only accepts props related to itself and cannot contain generic configuration like the onSubmit event.\\n      openFirstPaymentMethod:false\\n  })\\n .mount(&#039;#dropin-container&#039;);&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, Drop-in calls the &lt;code&gt;onSubmit&lt;\\\/code&gt; event, which contains a &lt;code&gt;state.data&lt;\\\/code&gt;. These are the shopper details that you need to make the payment.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;7\\&quot;&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Sample state from onSubmit event for a card payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    isValid: true,\\\\n    data: {\\\\n      paymentMethod: {\\\\n        type: \\\\\\&quot;scheme\\\\\\&quot;,\\\\n        encryptedCardNumber: \\\\\\&quot;adyenjs_0_1_18$k7s65M5V0KdPxTErhBIPoMPI8HlC..\\\\\\&quot;,\\\\n        encryptedExpiryMonth: \\\\\\&quot;adyenjs_0_1_18$p2OZxW2XmwAA8C1Avxm3G9UB6e4..\\\\\\&quot;,\\\\n        encryptedExpiryYear: \\\\\\&quot;adyenjs_0_1_18$CkCOLYZsdqpxGjrALWHj3QoGHqe+..\\\\\\&quot;,\\\\n        encryptedSecurityCode: \\\\\\&quot;adyenjs_0_1_18$XUyMJyHebrra\\\\\\\/TpSda9fha978+..\\\\\\&quot;\\\\n        holderName: \\\\\\&quot;S. Hopper\\\\\\&quot;\\\\n      }\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;de379496154fffc3041c69cae957ca6a&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;Configuring Drop-in&lt;\\\/h3&gt;\\n&lt;p&gt;Drop-in accepts the following props.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;openFirstPaymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;When enabled, Drop-in opens the first payment method automatically on page load. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;openFirstStoredPaymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;When enabled, Drop-in opens the payment method with stored card details on page load. This option takes precedence over &lt;code&gt;openFirstPaymentMethod&lt;\\\/code&gt;. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showStoredPaymentMethods&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Shows or hides payment methods with stored card details. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showRemovePaymentMethodButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Allows the shopper to remove a stored payment method. Defaults to &lt;strong&gt;false&lt;\\\/strong&gt;. &lt;br&gt; If using this prop, you must also implement the &lt;code&gt;onDisableStoredPaymentMethod&lt;\\\/code&gt; callback.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPaymentMethods&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Shows or hides regular (not stored) payment methods. Set to &lt;strong&gt;false&lt;\\\/strong&gt;  if you only want to show payment methods with stored card details. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Show or hides a &lt;strong&gt;Pay&lt;\\\/strong&gt; Button for each payment method. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;. The &lt;strong&gt;Pay&lt;\\\/strong&gt; button triggers the &lt;code&gt;onSubmit&lt;\\\/code&gt; event when payment details are valid. &lt;br&gt; &lt;p&gt;&lt;\\\/p&gt; If you want to disable the button and then trigger the submit flow on your own, set this to &lt;strong&gt;false&lt;\\\/strong&gt; and call the &lt;code&gt;.submit()&lt;\\\/code&gt; method from your own button implementation. For example, &lt;code&gt;dropin.submit()&lt;\\\/code&gt;&lt;p&gt;&lt;\\\/p&gt; Note that PayPal Smart Payment Buttons doesn&#039;t support the &lt;code&gt;.submit()&lt;\\\/code&gt; method.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;setStatusAutomatically&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Set to &lt;strong&gt;false&lt;\\\/strong&gt; to not set the Drop-in status to &lt;code&gt;&#039;loading&#039;&lt;\\\/code&gt; when &lt;code&gt;onSubmit&lt;\\\/code&gt; is triggered. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;redirectFromTopWhenInIframe&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If your Drop-in is inside of an &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/HTML\\\/Element\\\/iframe\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;iframe element&lt;\\\/a&gt;, set to &lt;strong&gt;true&lt;\\\/strong&gt; if you want redirects to be performed on the top-level window. &lt;br&gt; We recommend that you do not put Drop-in in an iframe.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;:&quot;&lt;h2&gt;Introducing Web v6&lt;\\\/h2&gt;\\n&lt;h3&gt;Improvements&lt;\\\/h3&gt;\\n&lt;p&gt;The Web v6 library introduces the following improvements:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Reduced bundle size through tree shaking&lt;\\\/li&gt;\\n&lt;li&gt;Enhanced design&lt;\\\/li&gt;\\n&lt;li&gt;Enhanced Typescript developer experience&lt;\\\/li&gt;\\n&lt;li&gt;Better alignment of express payment methods&lt;\\\/li&gt;\\n&lt;li&gt;Added support for 6 localizations&lt;\\\/li&gt;\\n&lt;li&gt;Support for Apple Pay Order tracking&lt;\\\/li&gt;\\n&lt;li&gt;Improve AVS checks for Google Pay and Apple Pay&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;To upgrade your existing integration, see &lt;a href=\\&quot;\\\/online-payments\\\/upgrade-your-integration\\\/upgrade-to-web-v6\\&quot;&gt;Upgrade to Adyen Web v6&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;2cbc98eb15fb1cc85b0db67cdc162edc&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Drop-in to your payments form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Next, use Drop-in to show the available payment methods, and to collect payment details from your shopper.&lt;\\\/p&gt;\\n&lt;p&gt;Import using the Adyen Web npm package, or embed the Adyen Web script and stylesheet into your HTML file:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabRJiDY32073\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;32073&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;npm (recommended)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;We offer two ways of importing with npm:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;#import-drop-in-with-all-payment-methods\\\\&amp;quot;&amp;gt;Import Drop-in with all payment methods&amp;lt;\\\\\\\/a&amp;gt;: this method resembles what you are used to before v6. You do not need to import individual payment methods, at the cost of a larger bundle size.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;#import-drop-in-with-individual-payment-methods\\\\&amp;quot;&amp;gt;Import Drop-in with individual payment methods&amp;lt;\\\\\\\/a&amp;gt;: this method uses tree shaking to let you import only the payment methods you use, speeding up loading time, at the cost of maintainability (adding payment methods requires developer resources).&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Import Drop-in with all payment methods&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Install the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/package\\\\\\\/@adyen\\\\\\\/adyen-web\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Adyen Web Node package&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install @adyen\\\\\\\\\\\\\\\/adyen-web --save\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Import Adyen Web into your application:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;import { AdyenCheckout, Dropin } from &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web\\\\\\\\\\\\\\\/auto&amp;#039;;\\\\\\\\nimport &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web\\\\\\\\\\\\\\\/styles\\\\\\\\\\\\\\\/adyen.css&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;h4&amp;gt;Import Drop-in with individual payment methods&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Install the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/package\\\\\\\/@adyen\\\\\\\/adyen-web\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Adyen Web Node package&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install @adyen\\\\\\\\\\\\\\\/adyen-web --save\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Import Adyen Web into your application.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;import { AdyenCheckout, Dropin, Card, GooglePay, PayPal } from &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web&amp;#039;;\\\\\\\\nimport &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web\\\\\\\\\\\\\\\/styles\\\\\\\\\\\\\\\/adyen.css&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;npm&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;npm_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;npm&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Embed script and stylesheet&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Use the &amp;lt;code&amp;gt;integrity&amp;lt;\\\\\\\/code&amp;gt; attribute so browsers can verify that the script and stylesheet have not been changed unexpectedly.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;The value of the &amp;lt;code&amp;gt;integrity&amp;lt;\\\\\\\/code&amp;gt; attribute is the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/web-best-practices#implement-subresource-integrity-hashes\\\\&amp;quot;&amp;gt;Subresource Integrity (SRI) hash&amp;lt;\\\\\\\/a&amp;gt; which Adyen provides for each version of the Adyen Web JavaScript and CSS files.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Get the SRI hashes in the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/release-notes?integration_type=web\\\\&amp;quot;&amp;gt;release notes&amp;lt;\\\\\\\/a&amp;gt;, under &amp;lt;strong&amp;gt;Updating to this version&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;checkout.html&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;html\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;lt;!-- Embed the Adyen Web script element above any other JavaScript in your checkout page. --&amp;gt;\\\\\\\\n&amp;amp;lt;script src=\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkoutshopper-test.cdn.adyen.com\\\\\\\\\\\\\\\/sdk\\\\\\\\\\\\\\\/VERSION\\\\\\\\\\\\\\\/adyen.js\\\\\\\\\\\\&amp;quot;\\\\\\\\n   integrity=\\\\\\\\\\\\&amp;quot;JS_INTEGRITY_HASH_FOR_YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\\\\\n   crossorigin=\\\\\\\\\\\\&amp;quot;anonymous\\\\\\\\\\\\&amp;quot;&amp;amp;gt;&amp;amp;lt;\\\\\\\\\\\\\\\/script&amp;amp;gt;\\\\\\\\n\\\\\\\\n&amp;lt;!-- Embed the Adyen Web stylesheet. You can add your own styling by overriding the rules in the CSS file --&amp;gt;\\\\\\\\n&amp;amp;lt;link rel=\\\\\\\\\\\\&amp;quot;stylesheet\\\\\\\\\\\\&amp;quot; href=\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkoutshopper-test.cdn.adyen.com\\\\\\\\\\\\\\\/checkoutshopper\\\\\\\\\\\\\\\/sdk\\\\\\\\\\\\\\\/VERSION\\\\\\\\\\\\\\\/adyen.css\\\\\\\\\\\\&amp;quot;\\\\\\\\n    integrity=\\\\\\\\\\\\&amp;quot;CSS_INTEGRITY_HASH_FOR_YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\\\\\n    crossorigin=\\\\\\\\\\\\&amp;quot;anonymous\\\\\\\\\\\\&amp;quot;&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;script&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;embed_script_and_stylesheet_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;script&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;&amp;emsp;&amp;emsp;&amp;nbsp;You can &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;add your own styling&lt;\\\/a&gt; by overriding the rules in this CSS file.&lt;\\\/p&gt;\\n&lt;p&gt;After you have imported the Adyen Web library, do the following:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/API\\\/Document_Object_Model\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Document Object Model (DOM) element&lt;\\\/a&gt; on your checkout page and put it where you want Drop-in to render on the page.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;html\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;&amp;lt;div id=\\\\\\&quot;dropin-container\\\\\\&quot;&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;If you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;init-drop-in\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;2\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a global configuration object with the following parameters and events:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response returned &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;when you get available payment methods&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;. &lt;br&gt; Web Drop-in versions before 3.10.1 use &lt;code&gt;originKey&lt;\\\/code&gt; instead. Find out how to &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\\/migrate-from-origin-key-to-client-key\\&quot;&gt;migrate from using &lt;code&gt;originKey&lt;\\\/code&gt; to &lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;locale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. This is used to set the language rendered in the UI. For a list of supported locales, see\\u00a0&lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;Language and localization&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. This is used to filter the list of available payment methods to your shopper. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/drop-in-web#testing-your-integration\\&quot;&gt;live environments&lt;\\\/a&gt;.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;secondaryAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Shows the payment amount in an additional currency on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button. You must do the currency conversion and set the amount. &lt;br&gt; This object has properties: &lt;ul&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The amount of the transaction, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currencyDisplay&lt;\\\/code&gt;: Sets the &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/JavaScript\\\/Reference\\\/Global_Objects\\\/Intl\\\/NumberFormat\\\/NumberFormat#currencydisplay\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;currency formatting&lt;\\\/a&gt;. Default: &lt;strong&gt;symbol&lt;\\\/strong&gt;.&lt;\\\/li&gt; &lt;ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Shows or hides a &lt;strong&gt;Pay&lt;\\\/strong&gt; Button for each payment method. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;. &lt;br&gt; When set to &lt;strong&gt;false&lt;\\\/strong&gt;, you must override it in &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/?platform=Web&amp;amp;integration=Drop-in#configure\\&quot;&gt;\\n  &lt;code&gt;paymentMethodsConfiguration&lt;\\\/code&gt;\\n&lt;\\\/a&gt;. &lt;br&gt; The &lt;strong&gt;Pay&lt;\\\/strong&gt; button triggers the &lt;code&gt;onSubmit&lt;\\\/code&gt; event when payment details are valid. If you want to disable the button and then trigger the submit flow on your own, set this to &lt;strong&gt;false&lt;\\\/strong&gt; and call the &lt;code&gt;.submit()&lt;\\\/code&gt; method from your own button implementation. &lt;br&gt; PayPal Smart Payment Buttons doesn&#039;t support the &lt;code&gt;.submit()&lt;\\\/code&gt; method.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Amount to be displayed on the &lt;strong&gt;Pay&lt;\\\/strong&gt; Button. It expects an object with the value and currency properties. For example, &lt;code&gt;{ value: 1000, currency: &#039;USD&#039; }&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Event name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit(state, dropin, actions)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler for this event, which is called when the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, and the details are valid. This applies if the &lt;a href=\\&quot;#configure\\&quot;&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt; configuration parameter&lt;\\\/a&gt; is set to &lt;strong&gt;true&lt;\\\/strong&gt;. &lt;br&gt; Makes a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request. &lt;br&gt; You must call &lt;code&gt;actions.resolve()&lt;\\\/code&gt;, passing &lt;code&gt;resultCode&lt;\\\/code&gt;, &lt;code&gt;action&lt;\\\/code&gt;, and &lt;code&gt;order&lt;\\\/code&gt; objects (if available) from the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, even if the payment is unsuccessful. &lt;br&gt; If the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request from your server fails, or if an unexpected error occurs, call &lt;code&gt;actions.reject()&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails(state, dropin, actions)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when a payment method requires more details, for example for native 3D Secure 2, or native QR code payment methods. Makes a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. &lt;br&gt; If the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request from your server is successful, you must call &lt;code&gt;actions.resolve()&lt;\\\/code&gt;, passing &lt;code&gt;resultCode&lt;\\\/code&gt;, &lt;code&gt;action&lt;\\\/code&gt;, and &lt;code&gt;order&lt;\\\/code&gt; objects (if available) from the API response. You must call it even if the payment is unsuccessful.  &lt;br&gt; If the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request from your server fails, or if an unexpected error occurs, call &lt;code&gt;actions.reject&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onPaymentCompleted(result, component)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the payment is completed.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onPaymentFailed(result, component)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the payment failed. A failed payment has result code &lt;strong&gt;Cancelled&lt;\\\/strong&gt;, &lt;strong&gt;Error&lt;\\\/strong&gt; or &lt;strong&gt;Refused&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onError(error)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when an error occurs in Drop-in.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onChange(state, dropin)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the shopper provides the required payment details.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a id=\\&quot;on-action-handled\\&quot;&gt;&lt;\\\/a&gt;&lt;code&gt;onActionHandled&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when an action, for example a QR code or 3D Secure 2 authentication screen, is shown to the shopper. The following &lt;code&gt;action.type&lt;\\\/code&gt; values trigger this callback: &lt;ul&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;threeDS&lt;\\\/code&gt;&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;qr&lt;\\\/code&gt;&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;await&lt;\\\/code&gt;&lt;\\\/li&gt; &lt;\\\/ul&gt; Returns data that contains: &lt;ul&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;componentType&lt;\\\/code&gt;: The type of component that shows the action to the shopper.&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;actionDescription&lt;\\\/code&gt;: A description of the action shown to the shopper.&lt;\\\/li&gt; &lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create a configuration object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const configuration = {\\\\n  clientKey: \\\\&amp;quot;YOUR_CLIENT_KEY\\\\&amp;quot;,\\\\n  environment: \\\\&amp;quot;test\\\\&amp;quot;,\\\\n  amount: {\\\\n    value: 1000,\\\\n    currency: &#039;EUR&#039;\\\\n  },\\\\n  locale: &#039;nl-NL&#039;,\\\\n  countryCode: &#039;NL&#039;,\\\\n  \\\\\\\/\\\\\\\/ The full \\\\\\\/paymentMethods response object from your server. Contains the payment methods configured in your account.\\\\n  paymentMethodsResponse: paymentMethodsResponse,\\\\n  onSubmit: async (state, component, actions) =&amp;gt; {\\\\n    try {\\\\n\\\\n      \\\\\\\/\\\\\\\/ Make a POST \\\\\\\/payments request from your server.\\\\n      const result = await makePaymentsCall(state.data, countryCode, locale, amount);\\\\n\\\\n      \\\\\\\/\\\\\\\/ If the \\\\\\\/payments request from your server fails, or if an unexpected error occurs.\\\\n      if (!result.resultCode) {\\\\n        actions.reject();\\\\n        return;\\\\n      }\\\\n\\\\n      const {\\\\n        resultCode,\\\\n        action,\\\\n        order,\\\\n        donationToken\\\\n      } = result;\\\\n\\\\n      \\\\\\\/\\\\\\\/ If the \\\\\\\/payments request request form your server is successful, you must call this to resolve whichever of the listed objects are available.\\\\n      \\\\\\\/\\\\\\\/ You must call this, even if the result of the payment is unsuccessful.\\\\n      actions.resolve({\\\\n        resultCode,\\\\n        action,\\\\n        order,\\\\n        donationToken,\\\\n      });\\\\n    } catch (error) {\\\\n      console.error(\\\\&amp;quot;onSubmit\\\\&amp;quot;, error);\\\\n      actions.reject();\\\\n    }\\\\n  },\\\\n  onAdditionalDetails: async (state, component, actions) =&amp;gt; {\\\\n    try {\\\\n\\\\n      \\\\\\\/\\\\\\\/ Make a POST \\\\\\\/payments\\\\\\\/details request from your server.\\\\n      const result = await makeDetailsCall(state.data);\\\\n\\\\n      \\\\\\\/\\\\\\\/ If the \\\\\\\/payments\\\\\\\/details request from your server fails, or if an unexpected error occurs.\\\\n      if (!result.resultCode) {\\\\n        actions.reject();\\\\n        return;\\\\n      }\\\\n\\\\n      const {\\\\n        resultCode,\\\\n        action,\\\\n        order,\\\\n        donationToken\\\\n      } = result;\\\\n\\\\n      \\\\\\\/\\\\\\\/ If the \\\\\\\/payments\\\\\\\/details request request from your server is successful, you must call this to resolve whichever of the listed objects are available.\\\\n      \\\\\\\/\\\\\\\/ You must call this, even if the result of the payment is unsuccessful.\\\\n      actions.resolve({\\\\n        resultCode,\\\\n        action,\\\\n        order,\\\\n        donationToken,\\\\n      });\\\\n    } catch (error) {\\\\n      console.error(\\\\&amp;quot;onSubmit\\\\&amp;quot;, error);\\\\n      actions.reject();\\\\n    }\\\\n  },\\\\n  onPaymentCompleted: (result, component) =&amp;gt; {\\\\n    console.info(result, component);\\\\n  },\\\\n  onPaymentFailed: (result, component) =&amp;gt; {\\\\n    console.info(result, component);\\\\n  },\\\\n  onError: (error, component) =&amp;gt; {\\\\n    console.error(error.name, error.message, error.stack, component);\\\\n  }\\\\n);&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create an instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;, passing the global configuration object you created:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;const checkout = await AdyenCheckout(configuration);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create and mount an instance of &lt;code&gt;Dropin&lt;\\\/code&gt;, passing the instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt; you created. You can add &lt;a href=\\&quot;#drop-in-configuration\\&quot;&gt;optional Drop-in configuration&lt;\\\/a&gt; your instance of &lt;code&gt;Dropin&lt;\\\/code&gt;. How you create it depends on if you import resources for all payment methods or individual payment methods.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabxX8VL32073\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;32073&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;All payment methods&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;checkout.js&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;initialize-npm&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create an instance of Drop-in and mount it to the container you created.\\\\\\\\nconst dropin = new Dropin(checkout).mount(&amp;#039;#dropin&amp;#039;);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;all_payment_methods_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Individual payment methods&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;checkout.js&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create an instance of Drop-in.\\\\\\\\nconst dropin = new Dropin(checkout, {\\\\\\\\n  \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include the payment methods that imported.\\\\\\\\n  paymentMethodComponents: [Card, PayPal, GooglePay, ApplePay, Ideal],\\\\\\\\n  \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Mount it to the container you created.\\\\\\\\n  }).mount(&amp;#039;#dropin&amp;#039;);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;npm-auto&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;initialize-npm-auto_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;npm-auto&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, Drop-in calls the &lt;code&gt;onSubmit&lt;\\\/code&gt; event, which contains a &lt;code&gt;state.data&lt;\\\/code&gt;. These are the shopper details that you need to make the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Sample state from onSubmit event for a card payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    isValid: true,\\\\n    data: {\\\\n      paymentMethod: {\\\\n        type: \\\\\\&quot;scheme\\\\\\&quot;,\\\\n        encryptedCardNumber: \\\\\\&quot;adyenjs_0_1_18$k7s65M5V0KdPxTErhBIPoMPI8HlC..\\\\\\&quot;,\\\\n        encryptedExpiryMonth: \\\\\\&quot;adyenjs_0_1_18$p2OZxW2XmwAA8C1Avxm3G9UB6e4..\\\\\\&quot;,\\\\n        encryptedExpiryYear: \\\\\\&quot;adyenjs_0_1_18$CkCOLYZsdqpxGjrALWHj3QoGHqe+..\\\\\\&quot;,\\\\n        encryptedSecurityCode: \\\\\\&quot;adyenjs_0_1_18$XUyMJyHebrra\\\\\\\/TpSda9fha978+..\\\\\\&quot;\\\\n        holderName: \\\\\\&quot;S. Hopper\\\\\\&quot;\\\\n      }\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;2e0079f32d2baeae4d9c54f3585cf6bf&quot;:&quot;&lt;h3 id=\\&quot;drop-in-configuration\\&quot;&gt;Optional Drop-in configuration&lt;\\\/h3&gt;\\n&lt;p&gt;You can add the following configuration parameters to the &lt;code&gt;Dropin&lt;\\\/code&gt; configuration:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;openFirstPaymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;When enabled, Drop-in opens the first payment method automatically on page load. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;openFirstStoredPaymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;When enabled, Drop-in opens the payment method with stored card details on page load. This option takes precedence over &lt;code&gt;openFirstPaymentMethod&lt;\\\/code&gt;. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;openPaymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Automatically selects the specified payment method when Drop-in renders. Set the &lt;a href=\\&quot;\\\/payment-methods\\\/payment-method-types\\\/\\&quot;&gt;payment method type&lt;\\\/a&gt; that you want to be automatically selected as the value.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showStoredPaymentMethods&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Shows or hides payment methods with stored card details. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showRemovePaymentMethodButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Allows the shopper to remove a stored payment method. Defaults to &lt;strong&gt;false&lt;\\\/strong&gt;. &lt;br&gt; If using this prop, you must also implement the &lt;code&gt;onDisableStoredPaymentMethod&lt;\\\/code&gt; callback.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPaymentMethods&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Shows or hides regular (not stored) payment methods. Set to &lt;strong&gt;false&lt;\\\/strong&gt;  if you only want to show payment methods with stored card details. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsConfiguration&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Configuration for individual payment methods. The &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guides&lt;\\\/a&gt; have configuration options specific to each payment method. &lt;br&gt; If you include this in the configuration on your instance of &lt;code&gt;DropIn&lt;\\\/code&gt;, it overrides global payment method configuration on your instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;redirectFromTopWhenInIframe&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If your Drop-in is inside of an &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/HTML\\\/Element\\\/iframe\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;iframe element&lt;\\\/a&gt;, set to &lt;strong&gt;true&lt;\\\/strong&gt; if you want redirects to be performed on the top-level window. &lt;br&gt; We recommend that you do not put Component in an iframe.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instantPaymentTypes&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Moves payment methods to the top of the list of available payment methods. This is available for &lt;a href=\\&quot;\\\/payment-methods\\\/apple-pay\\\/web-drop-in#instant-payment-button-configuration\\&quot;&gt;Apple Pay&lt;\\\/a&gt; and &lt;a href=\\&quot;\\\/payment-methods\\\/google-pay\\\/web-drop-in#instant-payment-button-configuration\\&quot;&gt;Google Pay&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;disableFinalAnimation&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;When enabled, disables the final animation after a shopper completes the payment (whether successful or failed). This lets you implement your own Defaults to &lt;strong&gt;false&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showRadioButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;When enabled, payment methods in the Drop-in have a &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/HTML\\\/Element\\\/input\\\/radio\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;radio button&lt;\\\/a&gt;. Defaults to &lt;strong&gt;false&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;9b0d0d2b273b2eeea5e47dfd382d7a97&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;state.data.paymentMethod&lt;\\\/code&gt; from the &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client website.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;URL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;. You can also include your own additional query parameters, for example, shopper ID or order reference number.   &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;riskData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/risk-management\\\/fraud-data-collection\\&quot;&gt;Device characteristics and other data&lt;\\\/a&gt; that we use to detect fraudulent payment activity, and mitigate fraud.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;checkoutAttemptId&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt; generated by Drop-in to track the user payment journey. This is required for &lt;a href=\\&quot;\\\/uplift#uplift-personalize\\&quot;&gt;Adyen Uplift&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperEmail&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s email address. Strongly recommended because this field is used in a number of &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;risk checks&lt;\\\/a&gt;, and for 3D Secure.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperIP&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s IP address. Strongly recommended because this field is used in a number of &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;risk checks&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperReference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your reference to uniquely identify this shopper. Minimum length: three characters. Do not include personally identifiable information, for example name or email address. Strongly recommended because this field is used in a number of &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;risk checks&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.&lt;\\\/li&gt;\\n&lt;li&gt;Using &lt;a href=\\&quot;\\\/uplift#uplift-personalize\\&quot;&gt;the Adyen Uplift Personalize module&lt;\\\/a&gt; and accessing the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt;.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-web&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n\\\\t    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n\\\\t   \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;checkoutAttemptId\\\\&amp;quot;: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nRiskData riskData = new RiskData()\\\\n  .clientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .checkoutAttemptId(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;)\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  .riskData(riskData);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\RiskData;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$riskData = new RiskData();\\\\n$riskData\\\\n  -&amp;gt;setClientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setCheckoutAttemptId(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  -&amp;gt;setRiskData($riskData);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.2\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nRiskData riskData = new RiskData\\\\n{\\\\n  ClientData = \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  CheckoutAttemptId = \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData = riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: {\\\\n    type: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: {\\\\n    clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  checkoutAttemptId: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\nriskData := checkout.RiskData{\\\\n  ClientData: common.PtrString(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  CheckoutAttemptId: common.PtrString(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData: &amp;amp;riskData,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;checkoutAttemptId\\\\&amp;quot;: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;,\\\\n  :riskData =&amp;gt; {\\\\n    :clientData =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==&#039;\\\\n  },\\\\n  :checkoutAttemptId =&amp;gt; &#039;7m583f18-b533-4fn0...&#039;,\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst riskData: Types.checkout.RiskData = {\\\\n  clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  checkoutAttemptId: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;payments-response-dropin\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;c8f715d72be71a9d39b5a73d29831011&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;To handle the additional action:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;action&lt;\\\/code&gt; object from your server to the &lt;code&gt;onSubmit&lt;\\\/code&gt; &lt;code&gt;actions.resolve()&lt;\\\/code&gt; function.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Drop-in performs additional actions depending on the value of &lt;code&gt;action.type&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, Drop-in redirects your shopper to another website to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper finishes their payment on the other website, they are returned to your &lt;code&gt;returnUrl&lt;\\\/code&gt; with an HTTP GET request. The &lt;code&gt;returnUrl&lt;\\\/code&gt; is appended with a Base64-encoded &lt;code&gt;redirectResult&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example return URL&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;raw\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;GET \\\\\\\/?shopperOrder=12xy..&amp;amp;&amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\/1.1\\\\nHost: www.your-company.example.com\\\\\\\/checkout\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;If the shopper fails to return to your website, you do not get the &lt;code&gt;redirectResult&lt;\\\/code&gt;. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;To process the result:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Get the &lt;code&gt;redirectResult&lt;\\\/code&gt; appended to your return URL. You do not need to decode it.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;redirectResult&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example JavaScript code snippet to handle redirectResult&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;function handleRedirectResult() {\\\\n\\\\n  \\\\\\\/\\\\\\\/ 1. Get the redirectResult from your return URL.\\\\n  const urlParams = new URLSearchParams(window.location.search);\\\\n  const redirectResult = urlParams.get(&#039;redirectResult&#039;);\\\\n\\\\n  if (redirectResult) {\\\\n    \\\\\\\/\\\\\\\/ 2. Pass the redirectResult to your server.\\\\n    \\\\\\\/\\\\\\\/ 3. Your server makes the \\\\\\\/payments\\\\\\\/details request. Adyen&#039;s server processes the encoded redirectResult value.\\\\n    fetch(&#039;\\\\\\\/api\\\\\\\/handle-payment-redirect&#039;, {\\\\n      method: &#039;POST&#039;,\\\\n      headers: {\\\\n        &#039;Content-Type&#039;: &#039;application\\\\\\\/json&#039;,\\\\n      },\\\\n      body: JSON.stringify({ redirectResult: redirectResult }),\\\\n    })\\\\n    .then(response =&amp;gt; response.json())\\\\n    .then(data =&amp;gt; {\\\\n      \\\\\\\/\\\\\\\/ Verify the resultCode from your server&#039;s response.\\\\n      if (data &amp;amp;&amp;amp; data.resultCode === &#039;Authorised&#039;) {\\\\n        console.log(&#039;Payment authorized successfully!&#039;);\\\\n        \\\\\\\/\\\\\\\/ Handle successful payment authorization. For example: show a confirmation message or redirect the shopper to a confirmation page.\\\\n      } else {\\\\n        console.log(&#039;Payment failed or denied.&#039;);\\\\n        \\\\\\\/\\\\\\\/ Handle payment failure. For example: show an error message or redirect the shopper to an error page.\\\\n      }\\\\n    })\\\\n    .catch(error =&amp;gt; {\\\\n      console.error(&#039;Error sending redirect result or processing server response:&#039;, error);\\\\n      \\\\\\\/\\\\\\\/ Handle network errors or issues with server communication.\\\\n    });\\\\n  }\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Call this function when your page loads.\\\\nhandleRedirectResult();&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows the QR code to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper scans the QR code to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;2\\&quot;&gt;\\n&lt;li&gt;Drop-in shows a different UI in an overlay.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper uses the UI overlay to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows the voucher to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper uses the voucher to pay outside of your website.&lt;\\\/li&gt;\\n&lt;li&gt;You &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows the instructions for the additional action to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper does the additional action.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt; or &lt;code&gt;onError&lt;\\\/code&gt;, depending on the result of the additional action.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; or &lt;code&gt;onError&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;f209b45f3373538446e123c72b843e18&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After Drop-in finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes\\&quot;&gt;\\n  &lt;code&gt;resultCode&lt;\\\/code&gt;\\n&lt;\\\/a&gt; from the &lt;code&gt;onPaymentCompleted&lt;\\\/code&gt; or &lt;code&gt;onPaymentFailed&lt;\\\/code&gt; event to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;h2 id=\\&quot;error-handling\\&quot;&gt;Error handling&lt;\\\/h2&gt;\\n&lt;p&gt;In case you encounter errors in your integration, refer to the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/error-codes\\&quot;&gt;API error codes&lt;\\\/a&gt;: If you receive a non-HTTP 200 response, use the &lt;code&gt;errorCode&lt;\\\/code&gt; to troubleshoot and modify your request.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/refusal-reasons\\&quot;&gt;Payment refusals&lt;\\\/a&gt;: If you receive an HTTP 200 response with an &lt;strong&gt;Error&lt;\\\/strong&gt; or &lt;strong&gt;Refused&lt;\\\/strong&gt; &lt;code&gt;resultCode&lt;\\\/code&gt;, check the refusal reason and, if possible, modify your request.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h2 id=\\&quot;testing-your-integration\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. Review the process to start accepting payments on &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?=1#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.\\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Load Drop-in from one of our live environments and set the &lt;code&gt;environment&lt;\\\/code&gt; to match your live endpoints:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;Value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe (EU) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;United States (US) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-us&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia (AU) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-au&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Asia Pacific &amp;amp; Southeast (APSE) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-apse&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;India (IN) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-in&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;4f0f614ce399f34fbd75e7c114ae8a8d&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The complete &lt;code&gt;state.data.paymentMethod&lt;\\\/code&gt; object from the &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client app. It includes the payment method details and other required information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The object that includes information collected by Drop-in to track the user&#039;s payment journey, including information like the &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt;. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;URL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;. You can also include your own additional query parameters, for example, shopper ID or order reference number.   &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;riskData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/risk-management\\\/fraud-data-collection\\&quot;&gt;Device characteristics and other data&lt;\\\/a&gt; that we use to detect fraudulent payment activity, and mitigate fraud.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperEmail&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s email address. Strongly recommended because this field is used in a number of &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;risk checks&lt;\\\/a&gt;, and for 3D Secure.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperIP&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s IP address. Strongly recommended because this field is used in a number of &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;risk checks&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperReference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your reference to uniquely identify this shopper. Minimum length: three characters. Do not include personally identifiable information, for example name or email address. Strongly recommended because this field is used in a number of &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;risk checks&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.&lt;\\\/li&gt;\\n&lt;li&gt;Using &lt;a href=\\&quot;\\\/uplift#uplift-personalize\\&quot;&gt;the Adyen Uplift Personalize module&lt;\\\/a&gt; and accessing the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt;.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-web&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n\\\\t    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n\\\\t   \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;checkoutAttemptId\\\\&amp;quot;: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nRiskData riskData = new RiskData()\\\\n  .clientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .checkoutAttemptId(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;)\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  .riskData(riskData);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\RiskData;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$riskData = new RiskData();\\\\n$riskData\\\\n  -&amp;gt;setClientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setCheckoutAttemptId(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  -&amp;gt;setRiskData($riskData);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.2\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nRiskData riskData = new RiskData\\\\n{\\\\n  ClientData = \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  CheckoutAttemptId = \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData = riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: {\\\\n    type: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: {\\\\n    clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  checkoutAttemptId: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\nriskData := checkout.RiskData{\\\\n  ClientData: common.PtrString(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  CheckoutAttemptId: common.PtrString(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData: &amp;amp;riskData,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;checkoutAttemptId\\\\&amp;quot;: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;,\\\\n  :riskData =&amp;gt; {\\\\n    :clientData =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==&#039;\\\\n  },\\\\n  :checkoutAttemptId =&amp;gt; &#039;7m583f18-b533-4fn0...&#039;,\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst riskData: Types.checkout.RiskData = {\\\\n  clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  checkoutAttemptId: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;payments-response-dropin\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;28df1f9d1f2f0d31a04e2e95a50dd303&quot;:&quot;&lt;h3 id=\\&quot;update-amount\\&quot;&gt;Optional: Update the payment amount&lt;\\\/h3&gt;\\n&lt;p&gt;If the amount changes after you mount Drop-in (for example: the shopper adds or removes items from their cart), you can update the payment amount without re-initializing &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;From your instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;, call the &lt;code&gt;update&lt;\\\/code&gt; method, passing the new amount.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Update the payment amount&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Create an amount object with the updated amount.\\\\nconst amount = { value: 2000, currency: &#039;EUR&#039; };\\\\n\\\\\\\/\\\\\\\/ Update the amount in the checkout instance.\\\\ncheckout.update(amount);&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;}},&quot;components&quot;:{&quot;label&quot;:&quot;Components&quot;,&quot;description&quot;:&quot;Use our customizable UI components&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;Web Components&lt;\\\/h2&gt;\\n&lt;p&gt;Render individual payment methods anywhere on your website.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=web%20components\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Low development time to integrate each payment method component&lt;\\\/li&gt;\\n&lt;li&gt;UI styling customization for each payment method&lt;\\\/li&gt;\\n&lt;li&gt;Flexibility to add payment method components with configuration for each&lt;\\\/li&gt;\\n&lt;li&gt;3D Secure 2 support using the 3D Secure 2 Component&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Demo&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a href=\\&quot;https:\\\/\\\/www.mystoredemo.io\\\/#\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View live demo&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;visual_images&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/web\\\/components\\\/visual\\\/web-v6-components.png&quot;,&quot;external_content&quot;:&quot;&lt;h3&gt;Adyen Web on GitHub&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-web\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View the Adyen Web repository&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/adyen-examples\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View our example integrations&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;external_icon&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/web\\\/github\\\/github-mark.png&quot;,&quot;versions&quot;:{&quot;version-6.31.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;optional_update_amount&quot;:{&quot;$ref&quot;:&quot;d5c2f03e2c7d8cb12308b97df6ae76ff&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7cfcaf1877c6e5c200241d37bdb1febb&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.31.1&quot;}},&quot;version-6.31.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;optional_update_amount&quot;:{&quot;$ref&quot;:&quot;d5c2f03e2c7d8cb12308b97df6ae76ff&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7cfcaf1877c6e5c200241d37bdb1febb&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;6.31.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69}},&quot;version-6.30.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7cfcaf1877c6e5c200241d37bdb1febb&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.30.0&quot;}},&quot;version-6.29.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7cfcaf1877c6e5c200241d37bdb1febb&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;6.29.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69}},&quot;version-6.28.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.28.0&quot;}},&quot;version-6.27.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.27.1&quot;}},&quot;version-6.27.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.27.0&quot;}},&quot;version-6.26.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.26.0&quot;}},&quot;version-6.25.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.25.0&quot;}},&quot;version-6.24.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.24.0&quot;}},&quot;version-6.23.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.23.0&quot;}},&quot;version-6.22.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.22.0&quot;}},&quot;version-6.21.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.21.0&quot;}},&quot;version-6.20.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.20.0&quot;}},&quot;version-6.19.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.19.0&quot;}},&quot;version-6.18.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.18.1&quot;}},&quot;version-6.18.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.18.0&quot;}},&quot;version-6.17.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.17.0&quot;}},&quot;version-6.16.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.16.0&quot;}},&quot;version-6.15.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.15.0&quot;}},&quot;version-6.14.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.14.0&quot;}},&quot;version-6.13.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.13.1&quot;}},&quot;version-6.13.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.13.0&quot;}},&quot;version-6.12.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.12.1&quot;}},&quot;version-6.12.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.12.0&quot;}},&quot;version-6.11.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.11.0&quot;}},&quot;version-6.10.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.10.0&quot;}},&quot;version-6.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.9.0&quot;}},&quot;version-6.8.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.8.0&quot;}},&quot;version-6.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.7.0&quot;}},&quot;version-6.6.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.6.0&quot;}},&quot;version-6.5.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.5.1&quot;}},&quot;version-6.5.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.5.0&quot;}},&quot;version-6.4.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.4.0&quot;}},&quot;version-6.3.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.3.0&quot;}},&quot;version-6.2.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.2.0&quot;}},&quot;version-6.1.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.1.1&quot;}},&quot;version-6.1.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.1.0&quot;}},&quot;version-6.0.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.0.3&quot;}},&quot;version-6.0.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.0.2&quot;}},&quot;version-6.0.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69},&quot;versions&quot;:{&quot;version&quot;:&quot;6.0.1&quot;}},&quot;version-6.0.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;d6dbac1b8733378f7532e16677fc1d00&quot;},&quot;version_update&quot;:{&quot;$ref&quot;:&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;17bcfc32021951f01c63ed73fbba7017&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;3a5072190e2741c93142964d69923476&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;6.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:69}},&quot;version-5.72.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.72.0&quot;}},&quot;version-5.71.5&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.71.5&quot;}},&quot;version-5.71.4&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.71.4&quot;}},&quot;version-5.71.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.71.3&quot;}},&quot;version-5.71.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.71.2&quot;}},&quot;version-5.71.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.71.1&quot;}},&quot;version-5.71.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.71.0&quot;}},&quot;version-5.70.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.70.0&quot;}},&quot;version-5.69.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.69.1&quot;}},&quot;version-5.69.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.69.0&quot;}},&quot;version-5.68.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.68.1&quot;}},&quot;version-5.68.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.68.0&quot;}},&quot;version-5.67.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.67.1&quot;}},&quot;version-5.67.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.67.0&quot;}},&quot;version-5.66.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.66.1&quot;}},&quot;version-5.66.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.66.0&quot;}},&quot;version-5.65.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.65.0&quot;}},&quot;version-5.64.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.64.0&quot;}},&quot;version-5.63.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.63.0&quot;}},&quot;version-5.62.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.62.0&quot;}},&quot;version-5.61.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.61.0&quot;}},&quot;version-5.60.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.60.0&quot;}},&quot;version-5.59.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.59.0&quot;}},&quot;version-5.58.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.58.0&quot;}},&quot;version-5.57.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.57.0&quot;}},&quot;version-5.56.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.56.1&quot;}},&quot;version-5.56.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.56.0&quot;}},&quot;version-5.55.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.55.1&quot;}},&quot;version-5.54.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.54.0&quot;}},&quot;version-5.53.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.53.3&quot;}},&quot;version-5.53.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.53.2&quot;}},&quot;version-5.53.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.53.1&quot;}},&quot;version-5.53.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.53.0&quot;}},&quot;version-5.52.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.52.0&quot;}},&quot;version-5.51.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;38309878bb9530debfe411fc18d685bd&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;ac14b9c3e689fef15851c6648ce599d0&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.51.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-5.50.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.50.1&quot;}},&quot;version-5.50.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.50.0&quot;}},&quot;version-5.49.6&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.6&quot;}},&quot;version-5.49.5&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.5&quot;}},&quot;version-5.49.4&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.4&quot;}},&quot;version-5.49.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.3&quot;}},&quot;version-5.49.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.2&quot;}},&quot;version-5.49.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.1&quot;}},&quot;version-5.49.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.49.0&quot;}},&quot;version-5.48.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.48.0&quot;}},&quot;version-5.47.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.47.0&quot;}},&quot;version-5.46.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.46.1&quot;}},&quot;version-5.46.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.46.0&quot;}},&quot;version-5.45.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.45.0&quot;}},&quot;version-5.44.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.44.0&quot;}},&quot;version-5.43.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.43.1&quot;}},&quot;version-5.43.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.43.0&quot;}},&quot;version-5.42.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.42.1&quot;}},&quot;version-5.42.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.42.0&quot;}},&quot;version-5.41.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.41.0&quot;}},&quot;version-5.40.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.40.1&quot;}},&quot;version-5.40.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.40.0&quot;}},&quot;version-5.39.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.39.1&quot;}},&quot;version-5.39.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.39.0&quot;}},&quot;version-5.38.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.38.0&quot;}},&quot;version-5.37.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.37.0&quot;}},&quot;version-5.36.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.36.0&quot;}},&quot;version-5.35.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.35.0&quot;}},&quot;version-5.34.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.34.0&quot;}},&quot;version-5.33.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.33.0&quot;}},&quot;version-5.32.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.32.0&quot;}},&quot;version-5.31.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.31.3&quot;}},&quot;version-5.31.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.31.2&quot;}},&quot;version-5.31.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.31.1&quot;}},&quot;version-5.31.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.31.0&quot;}},&quot;version-5.30.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.30.1&quot;}},&quot;version-5.30.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.30.0&quot;}},&quot;version-5.29.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.29.0&quot;}},&quot;version-5.28.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.28.3&quot;}},&quot;version-5.28.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.28.2&quot;}},&quot;version-5.28.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.28.1&quot;}},&quot;version-5.28.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.28.0&quot;}},&quot;version-5.27.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.27.0&quot;}},&quot;version-5.26.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.26.0&quot;}},&quot;version-5.25.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.25.0&quot;}},&quot;version-5.24.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.24.0&quot;}},&quot;version-5.23.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.23.1&quot;}},&quot;version-5.23.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.23.0&quot;}},&quot;version-5.22.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.22.0&quot;}},&quot;version-5.21.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.21.0&quot;}},&quot;version-5.20.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.20.0&quot;}},&quot;version-5.19.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.19.0&quot;}},&quot;version-5.18.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.18.0&quot;}},&quot;version-5.17.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.17.0&quot;}},&quot;version-5.16.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.2&quot;}},&quot;version-5.16.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.1&quot;}},&quot;version-5.16.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-5.15.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.15.0&quot;}},&quot;version-5.14.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.14.0&quot;}},&quot;version-5.13.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.13.1&quot;}},&quot;version-5.13.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.13.0&quot;}},&quot;version-5.12.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.12.0&quot;}},&quot;version-5.11.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.11.0&quot;}},&quot;version-5.10.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.10.0&quot;}},&quot;version-5.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.9.0&quot;}},&quot;version-5.8.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.8.0&quot;}},&quot;version-5.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.7.0&quot;}},&quot;version-5.6.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.6.2&quot;}},&quot;version-5.6.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.6.1&quot;}},&quot;version-5.5.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.5.0&quot;}},&quot;version-5.4.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.4.0&quot;}},&quot;version-5.3.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.3.1&quot;}},&quot;version-5.3.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.3.0&quot;}},&quot;version-5.2.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.2.2&quot;}},&quot;version-5.2.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.2.1&quot;}},&quot;version-5.2.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.2.0&quot;}},&quot;version-5.1.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.1.0&quot;}},&quot;version-5.0.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c2f68bcb87d56f9048d25e4a84528573&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;d61b2f54de5a256cafebb83917ad7fff&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;1f40cdb2b4740461769998c17a75f124&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-4.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;bcb8b5376c20ab2b91459d8cc1393ca3&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;ebe93a6cb44629b753c13402a2100ca7&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9b779654b45f2e02319055ee928e2fe4&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;26c1dd1e9c6cd3edd617fe474708528a&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.9.0&quot;}},&quot;version-4.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f53798e54f64765d065804fade9015ef&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;bcb8b5376c20ab2b91459d8cc1393ca3&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;ebe93a6cb44629b753c13402a2100ca7&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;9b779654b45f2e02319055ee928e2fe4&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;26c1dd1e9c6cd3edd617fe474708528a&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;f3b759b751c98d2abee962d6fb19c74e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;4.7.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-4.6.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:null},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;192d4e59b63ca997d809435c37abc6fc&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;f39b150b4c7c1fbf1c84e7118210b59b&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d3f1ab6aae22033167c2695ee7a877db&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;bcb8b5376c20ab2b91459d8cc1393ca3&quot;},&quot;configuring_components&quot;:{&quot;$ref&quot;:&quot;3b2d24a9c3fb69129e483b9f775a5442&quot;},&quot;events&quot;:{&quot;$ref&quot;:&quot;294f132eff75a51beeb53855d4d02884&quot;},&quot;methods&quot;:{&quot;$ref&quot;:&quot;60673268164acf112c4973adb1c8d6d2&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;763f40c99ba1279b0c98ff1f51953bfd&quot;},&quot;handle_additional_actions&quot;:{&quot;$ref&quot;:&quot;b7245229378b77cb8aaab7a87f4c9409&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;a8aa84acb443b5a9b294cc9ee407daa2&quot;},&quot;get_the_payment_outcome&quot;:{&quot;$ref&quot;:&quot;fcd595f92bfb3275bbae5df546a360ff&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;7be511879401fffc62548f8712a5de12&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;4.6.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;192d4e59b63ca997d809435c37abc6fc&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;additional-info-block output-inline\\&quot;&gt;\\n&lt;h5 class=\\&quot;article__heading additional-info-block__title\\&quot;&gt;Check out our Node.js + Express tutorial&lt;\\\/h5&gt;&lt;div class=\\&quot;additional-info-block__body\\&quot;&gt;&lt;p&gt;Follow our tutorial to &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/advanced-flow\\\/web-drop-in-tutorial\\&quot;&gt;integrate Drop-in with Node.js and Express&lt;\\\/a&gt;.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/div&gt;\\n\\n&lt;p&gt;Before you begin to integrate, make sure you have followed the &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen guide&lt;\\\/a&gt; to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Get an overview of the steps needed to accept live payments.&lt;\\\/li&gt;\\n&lt;li&gt;Create your test account.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After you have created your test account:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt; to know the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;To make sure that your 3D Secure integration works on Chrome, your cookies need to have the SameSite attribute. For more information, refer to &lt;a href=\\&quot;https:\\\/\\\/developers.google.com\\\/search\\\/blog\\\/2020\\\/01\\\/get-ready-for-new-samesitenone-secure\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Chrome SameSite Cookie policy&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&quot;,&quot;f39b150b4c7c1fbf1c84e7118210b59b&quot;:&quot;&lt;h2 id=\\&quot;how-it-works\\&quot;&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Components integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client website&lt;\\\/strong&gt;: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client website. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps46678\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#add\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client website.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a rel=\\&quot;lightbox\\&quot; href=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/web\\\/4-6-0\\\/components\\\/01.how-it-works\\\/components-flow.jpg\\&quot; src=\\&quot;\\&quot;&gt;\\n  &lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/web\\\/4-6-0\\\/components\\\/01.how-it-works\\\/components-flow.jpg\\&quot; \\\/&gt;\\n&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, submit a request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#add\\&quot;&gt;Add the specific payment method Component&lt;\\\/a&gt; to your payments form.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;submit a payment request&lt;\\\/a&gt; with the data returned by the Component.&lt;\\\/li&gt;\\n&lt;li&gt;Determine from the response if you need to perform additional actions on your client website, such as to &lt;a href=\\&quot;#additional-action\\&quot;&gt;redirect the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;submit additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabCHPSg14040\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;14040&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;d3f1ab6aae22033167c2695ee7a877db&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.&lt;\\\/p&gt;\\n&lt;p&gt;From your server, make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, specifying:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;. This is used to filter the list of available payment methods to your shopper.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The platform of the shopper&#039;s device; use &lt;strong&gt;Web&lt;\\\/strong&gt;. This is used to filter the list of available payment methods to your shopper.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. This is used to filter the list of available payment methods to your shopper. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, the &lt;code&gt;shopperlocale&lt;\\\/code&gt; is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code. You also need to set the same &lt;code&gt;locale&lt;\\\/code&gt; within your Drop-in configuration.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The following example shows how to get the available payment methods for a shopper in the &lt;strong&gt;Netherlands&lt;\\\/strong&gt;, for a payment of &lt;strong&gt;EUR&amp;nbsp;10&lt;\\\/strong&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;web-advanced-flow-post-payment-methods-request&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v28.4.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(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest()\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .countryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  .channel(PaymentMethodsRequest.ChannelEnum.WEB)\\\\n  .shopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen PHP API Library v20.3.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentMethodsRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentMethodsRequest = new PaymentMethodsRequest();\\\\n$paymentMethodsRequest\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setCountryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  -&amp;gt;setChannel(\\\\&amp;quot;Web\\\\&amp;quot;)\\\\n  -&amp;gt;setShopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v20.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 = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest\\\\n{\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode = \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  Channel = PaymentMethodsRequest.ChannelEnum.Web,\\\\n  ShopperLocale = \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v19.3.0\\\\n\\\\\\\/\\\\\\\/ Require the parts of the module you want to use\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\\\\/\\\\\\\/ Initialize the client object\\\\n\\\\\\\/\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\nconst client = new Client({apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, environment: \\\\&amp;quot;TEST\\\\&amp;quot;});\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v12.2.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v9\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v9\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v9\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentMethodsRequest := checkout.PaymentMethodsRequest{\\\\n  Amount: &amp;amp;amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode: common.PtrString(\\\\&amp;quot;NL\\\\&amp;quot;),\\\\n  Channel: common.PtrString(\\\\&amp;quot;Web\\\\&amp;quot;),\\\\n  ShopperLocale: common.PtrString(\\\\&amp;quot;nl-NL\\\\&amp;quot;),\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v12.7.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the live environment, additionally include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v9.7.1\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the live environment, additionally include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Web&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v19.3.0\\\\n\\\\\\\/\\\\\\\/ Require the parts of the module you want to use\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\\\\/\\\\\\\/ Initialize the client object\\\\n\\\\\\\/\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\nconst client = new Client({apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, environment: \\\\&amp;quot;TEST\\\\&amp;quot;});\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.Web,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available &lt;code&gt;paymentMethods&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;\\\/paymentMethods response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n   {\\\\n     \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n     \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;Cards\\\\\\&quot;,\\\\n     \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;scheme\\\\\\&quot;\\\\n     ...\\\\n   },\\\\n   {\\\\n     \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n     \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n     \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n   },\\\\n   ...\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Pass the response to your client website. You&#039;ll use this in the next step to show which payment methods are available for the shopper.&lt;\\\/p&gt;\\n&lt;h3&gt;Custom list of payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;When you make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, the response includes all payment methods that you enabled in your Customer Area that are available for the transaction.&lt;\\\/p&gt;\\n&lt;p&gt;To exclude payment methods from the available list of available payment methods for a specific transaction, include one of the following parameters when making your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt; &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods#request-allowedPaymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;allowedPaymentMethods&lt;\\\/a&gt;&amp;#58; Drop-in renders only the payment methods that you specify.&lt;\\\/li&gt;\\n&lt;li&gt; &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods#request-blockedPaymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;blockedPaymentMethods&lt;\\\/a&gt;&amp;#58; Drop-in doesn&#039;t render payment methods that you specify.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;bcb8b5376c20ab2b91459d8cc1393ca3&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Components to your payments form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Next, use the Component to render the payment method, and collect the required payment details from your shopper. Install the Adyen Web Node package or use a &lt;code&gt;&amp;lt;script&amp;gt;&lt;\\\/code&gt; tag.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabAZoDb60101\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;60101&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;npm (recommended)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Install the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/package\\\\\\\/@adyen\\\\\\\/adyen-web\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Adyen Web Node package&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install @adyen\\\\\\\\\\\\\\\/adyen-web --save\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Import Adyen Web into your application:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;import { AdyenCheckout } from &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web&amp;#039;;\\\\\\\\nimport &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web\\\\\\\\\\\\\\\/styles\\\\\\\\\\\\\\\/adyen.css&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;npm_(recommended)_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Embed script and stylesheet&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Include the following script in the\\\\u00a0&amp;lt;code&amp;gt;&amp;amp;lt;body&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;\\\\u00a0above any other JavaScript in your checkout page:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;We recommend that you also validate the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/web-best-practices#implement-subresource-integrity-hashes\\\\&amp;quot;&amp;gt;Subresource Integrity (SRI) hash&amp;lt;\\\\\\\/a&amp;gt;, which we provide for each version of our JavaScript and CSS files. You can find the SRI hashes in our &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/release-notes\\\\&amp;quot;&amp;gt;release notes&amp;lt;\\\\\\\/a&amp;gt;, under &amp;lt;strong&amp;gt;Updating to this version&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;script src=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.js\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-KF6Y8NQXGnIuzqJn5rcqCe6dMy7gBWobcIKr1BmIaz6pOeBAV0hrHBBMbHC\\\\\\\/inHu\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;&amp;amp;lt;\\\\\\\/script&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute.--&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Use the following CSS file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;link rel=\\\\&amp;quot;stylesheet\\\\&amp;quot; href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.css\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-uwMmo3xJR0e9jI+Oi5kzu43ShY0pXrb3auIlCjLjMNtl0X8Nat55eXNqwj8xU6H9\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute. --&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;embed_script_and_stylesheet_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;&amp;emsp;&amp;emsp;&amp;nbsp;You can &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;add your own styling&lt;\\\/a&gt; by overriding the rules in this CSS file.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a DOM element on your checkout page,\\u00a0placing it where you want the payment method form to be rendered. We strongly recommend that you do not put it in an &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/HTML\\\/Element\\\/iframe\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;iframe element&lt;\\\/a&gt;, because it may cause issues.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create DOM element&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;xml\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;&amp;lt;div id=\\\\\\&quot;component-container\\\\\\&quot;&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;If you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a id=\\&quot;adyencheckout\\&quot;&gt;&lt;\\\/a&gt; Create a &lt;code&gt;configuration&lt;\\\/code&gt; object with the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response returned &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;when you get available payment methods&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;br&gt; Web Components versions before 3.10.1 use &lt;code&gt;originKey&lt;\\\/code&gt; instead. Find out how to &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\\/migrate-from-origin-key-to-client-key\\&quot;&gt;migrate from using &lt;code&gt;originKey&lt;\\\/code&gt; to &lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;locale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. This is used to set the language rendered in the UI. For a list of supported locales, see\\u00a0&lt;a href=\\&quot;\\\/online-payments\\\/web-components\\\/localization-components\\&quot;&gt;Localization&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/drop-in-web#testing-your-integration\\&quot;&gt;live environments&lt;\\\/a&gt;.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler for this event, which is called when the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button. &lt;br&gt; This applies if the &lt;a href=\\&quot;#configure\\&quot;&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt; configuration parameter&lt;\\\/a&gt; is set to &lt;strong&gt;true&lt;\\\/strong&gt;. &lt;br&gt; In the example below, the handler is named &lt;code&gt;handleOnSubmit&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler for this event, used for native 3D Secure 2, and for native QR code payment methods. In the example below, the handler is named &lt;code&gt;handleOnAdditionalDetails&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; and &lt;code&gt;value&lt;\\\/code&gt; of the transaction.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Configure the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;function handleOnSubmit(state, component) {\\\\n    state.isValid \\\\\\\/\\\\\\\/ True or false. Specifies if all the information that the shopper provided is valid.\\\\n    state.data \\\\\\\/\\\\\\\/ Provides the data that you must include when you make the POST \\\\\\\/payments request.\\\\n    component \\\\\\\/\\\\\\\/ Provides the active instance of the Component that called this event.\\\\n}\\\\n\\\\nfunction handleOnAdditionalDetails(state, component) {\\\\n    state.data \\\\\\\/\\\\\\\/ Provides the data that you must include when you make the POST \\\\\\\/payments\\\\\\\/details request.\\\\n    component \\\\\\\/\\\\\\\/ Provides the active instance of the Component that called this event.\\\\n}\\\\n\\\\nconst configuration = {\\\\n    locale: \\\\&amp;quot;en_US\\\\&amp;quot;, \\\\\\\/\\\\\\\/ The shopper&#039;s locale. For a list of supported locales, see\\\\u00a0https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/web-components\\\\\\\/localization-components.\\\\n    environment: \\\\&amp;quot;test\\\\&amp;quot;, \\\\\\\/\\\\\\\/ When you are ready to accept live payments, change the value to one of our live environments https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/components-web#testing-your-integration.\\\\n    clientKey: \\\\&amp;quot;YOUR_CLIENT_KEY\\\\&amp;quot;, \\\\\\\/\\\\\\\/ Your client key. To find out how to generate one, see\\\\u00a0https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/development-resources\\\\\\\/client-side-authentication. Web Components versions before 3.10.1 use originKey instead of clientKey.\\\\n    analytics: {\\\\n      enabled: true \\\\\\\/\\\\\\\/ Set to false to not send analytics data to Adyen.\\\\n    },\\\\n    paymentMethodsResponse: paymentMethodsResponse, \\\\\\\/\\\\\\\/ The payment methods response returned from the POST \\\\\\\/paymentMethods request.\\\\n    showPayButton: true, \\\\\\\/\\\\\\\/ Set to false if you do not want to use the pre-built Pay button.\\\\n    onSubmit: handleOnSubmit, \\\\\\\/\\\\\\\/ Your function for handling the onSubmit event.\\\\n    amount: {  \\\\\\\/\\\\\\\/ Optional. Shows the amount on the Pay button.\\\\n        value: 1000,\\\\n        currency: &#039;EUR&#039;\\\\n    },\\\\n    onAdditionalDetails: handleOnAdditionalDetails \\\\\\\/\\\\\\\/ Your function for handling the onAdditionalDetails event.\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use the &lt;code&gt;configuration&lt;\\\/code&gt; object to create an instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create an instance of AdyenCheckout&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;const checkout = new AdyenCheckout(configuration);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Then use the &lt;code&gt;checkout.create&lt;\\\/code&gt; method to create and mount an instance of the payment method Component.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Some payment method Components require additional configuration. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For example, to mount the Card Component using its component name, &lt;code&gt;card&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Mount the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const card = checkout.create(&#039;card&#039;).mount(&#039;#component-container&#039;);&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;You can also include &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/web-component#component-configuration\\&quot;&gt;optional Card Component configuration&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;When the shopper enters the payment details and selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, the Component calls the &lt;code&gt;onSubmit&lt;\\\/code&gt; event. If &lt;code&gt;state.isValid&lt;\\\/code&gt; is &lt;strong&gt;true&lt;\\\/strong&gt;, use the data in &lt;code&gt;state.data&lt;\\\/code&gt; to make the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;state from onChange event for Card Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    isValid: true,\\\\n    data: {\\\\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    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;3b2d24a9c3fb69129e483b9f775a5442&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;Configuring Components&lt;\\\/h3&gt;\\n&lt;p&gt;You can include the following additional configuration when instantiating Components on your payments form:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;sc-notice info\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;You can also override the values that you set here by specifying these parameters for individual payment methods at the Component level.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/div&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Configuration object&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Set to &lt;strong&gt;true&lt;\\\/strong&gt; to use our pre-built &lt;strong&gt;Pay&lt;\\\/strong&gt; button for each payment method. The &lt;strong&gt;Pay&lt;\\\/strong&gt; button triggers the &lt;code&gt;onSubmit&lt;\\\/code&gt; event. &lt;br&gt; &lt;p&gt;&lt;\\\/p&gt; If you want to use your own button and then trigger the submit flow on your own, set this to &lt;strong&gt;false&lt;\\\/strong&gt; and call the &lt;code&gt;.submit()&lt;\\\/code&gt; method from your own button implementation. For example, &lt;code&gt;component.submit()&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Amount to be displayed on the &lt;strong&gt;Pay&lt;\\\/strong&gt; Button. It expects an object with the value and currency properties. For example, &lt;code&gt;{ value: 1000, currency: &#039;USD&#039; }&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;294f132eff75a51beeb53855d4d02884&quot;:&quot;&lt;h4 id=\\&quot;events\\&quot;&gt;Events&lt;\\\/h4&gt;\\n&lt;p&gt;Use the following events to include additional logic on your checkout page:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Event name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onChange(state, component)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create a handler for this event, which is called when the shopper has provided the required payment details for the specific payment method. You can use this to trigger custom messages or custom animations.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onError(error)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Called when an error occurs in the Component.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example handler for the onChange event&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;function handleOnChange(state, component) {\\\\n    state.isValid \\\\\\\/\\\\\\\/ True or false. Specifies if all the information that the shopper provided is valid.\\\\n    state.data \\\\\\\/\\\\\\\/ Provides the data that you must include when you make the POST \\\\\\\/payments request.\\\\n    component \\\\\\\/\\\\\\\/ Provides the active component instance that called this event.\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;60673268164acf112c4973adb1c8d6d2&quot;:&quot;&lt;h4 id=\\&quot;methods\\&quot;&gt;Methods&lt;\\\/h4&gt;\\n&lt;p&gt;All Components support the following methods:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Method name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;mount(selector)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Mounts the Component into the DOM returned by the &lt;code&gt;selector&lt;\\\/code&gt;. &lt;br&gt; The &lt;code&gt;selector&lt;\\\/code&gt; must be either a &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/API\\\/Document\\\/querySelector#parameters\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;valid CSS selector string&lt;\\\/a&gt; or an &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/API\\\/HTMLElement\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;HTMLElement&lt;\\\/a&gt; reference.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;unmount()&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Unmounts the Component from the DOM. We recommend to unmount in case the payment amount changes after the initial mount.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;763f40c99ba1279b0c98ff1f51953bfd&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper submits their payment details or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a  &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;state.data.paymentMethod&lt;\\\/code&gt; from the &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client website.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;URL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;. You can also include your own additional query parameters, for example, shopper ID or order reference number.  &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;riskData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/risk-management\\\/fraud-data-collection\\&quot;&gt;Device characteristics and other data&lt;\\\/a&gt; that we use to detect fraudulent payment activity, and mitigate fraud.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-web-earlier&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n\\\\t    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n\\\\t   \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nRiskData riskData = new RiskData()\\\\n  .clientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  .riskData(riskData);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\RiskData;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$riskData = new RiskData();\\\\n$riskData\\\\n  -&amp;gt;setClientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  -&amp;gt;setRiskData($riskData);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.2\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nRiskData riskData = new RiskData\\\\n{\\\\n  ClientData = \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData = riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: {\\\\n    type: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: {\\\\n    clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\nriskData := checkout.RiskData{\\\\n  ClientData: common.PtrString(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData: &amp;amp;riskData,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;,\\\\n  :riskData =&amp;gt; {\\\\n    :clientData =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==&#039;\\\\n  },\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst riskData: Types.checkout.RiskData = {\\\\n  clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabzMfks601\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;601&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v67 or later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;If the response has no &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;If the response contains an &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#additional-action\\\\&amp;quot;&amp;gt;handle the additional action&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example response with a redirect action&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;v67-redirect-response&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n  \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n    \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\\\\\\\\\/checkoutshopper\\\\\\\\\\\\\\\/checkoutPaymentRedirect?...\\\\\\\\\\\\&amp;quot;\\\\\\\\n  }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v67&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67-payments-response_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v67&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v66 or later earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;If the response has no &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;If the response contains an &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#additional-action\\\\&amp;quot;&amp;gt;handle the additional action&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example response with a redirect action&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;v66-redirect-response&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n  \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n    \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n  }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v66&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66-payments-response_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v66&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;b7245229378b77cb8aaab7a87f4c9409&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that you can add payment methods that require additional actions.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;To see if a specific payment method requires an additional action, go to the &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;div id=\\&quot;tabAmBLg10083\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;10083&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Component v3.6.0 or later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Call &amp;lt;code&amp;gt;handleAction&amp;lt;\\\\\\\/code&amp;gt;, passing the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object from the previous step. Your next steps depend on the type of action that the Component performs:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;handle-action&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;handle-action_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Component v3.5.0 or earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Call &amp;lt;code&amp;gt;createFromAction&amp;lt;\\\\\\\/code&amp;gt;, passing the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object from the previous step. This returns a new Component that you must mount:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-js\\\\&amp;quot;&amp;gt;checkout.createFromAction(action).mount(&amp;#039;#my-container&amp;#039;);&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The Component performs additional front-end actions, depending on the &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;. Your next steps depend on the type of action that the Component performs:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;create-from-action&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;create-from-action_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n\\n&lt;div id=\\&quot;tab9iSm010083\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;10083&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v67 and later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;&amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Next steps&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;voucher&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component shows the voucher which the shopper &amp;lt;br&amp;gt; uses to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;Get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component redirects the shopper to another website or app &amp;lt;br&amp;gt;to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. When the shopper returns to your website, your server needs to &amp;lt;a href=\\\\&amp;quot;#handle-the-redirect-v67\\\\&amp;quot;&amp;gt;handle the redirect result&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;qrCode&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component presents the QR code &amp;lt;br&amp;gt; and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;await&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component shows the waiting screen while the shopper completes the payment. &amp;lt;br&amp;gt; Depending on the payment outcome, the Component calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;onError&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; object from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;onError&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;sdk&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component presents the specific payment method&amp;#039;s UI as an overlay &amp;lt;br&amp;gt; and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;threeDS2&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The payment qualifies for 3D Secure 2, and will go through either the frictionless or the challenge flow.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Pass the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object to your client website. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\&amp;quot;&amp;gt;Use the 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt; to perform the authentication flow and to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;h3 id=\\\\&amp;quot;handle-the-redirect-67\\\\&amp;quot;&amp;gt;Handle the redirect result&amp;lt;\\\\\\\/h3&amp;gt;\\\\n&amp;lt;p&amp;gt;When the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt; &amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;, the Component redirects your shopper to another website to complete the payment or go through 3D Secure redirect authentication.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;After the shopper completes the payment or authentication, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with an HTTP GET. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-raw\\\\&amp;quot;&amp;gt;  GET \\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\/1.1\\\\n  Host: www.your-company.example.com\\\\\\\/checkout&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;Get the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; appended to your return URL and pass it to your server.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;If a shopper completed the payment but failed to return to your website, wait for the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook&amp;lt;\\\\\\\/a&amp;gt; to know the payment result. &amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ol start=\\\\&amp;quot;2\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v67&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67-actions_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v67&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v66 and earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;&amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Next steps&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;voucher&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component shows the voucher which the shopper &amp;lt;br&amp;gt; uses to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;Get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component redirects the shopper to another website or app &amp;lt;br&amp;gt;to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. When the shopper returns to your website, your server needs to &amp;lt;a href=\\\\&amp;quot;#handle-the-redirect\\\\&amp;quot;&amp;gt;handle the redirect result&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;qrCode&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component presents the QR code &amp;lt;br&amp;gt; and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;await&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component shows the waiting screen while the shopper completes the payment. &amp;lt;br&amp;gt; Depending on the payment outcome, the Component calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;onError&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; object from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;onError&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;sdk&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component presents the specific payment method&amp;#039;s UI as an overlay &amp;lt;br&amp;gt; and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;threeDS2Fingerprint&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The payment qualifies for 3D Secure 2, and will go through either the frictionless or the challenge flow.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Use our 3D Secure 2 Components to get the device fingerprint and complete the payment:&amp;lt;ul&amp;gt; &amp;lt;li&amp;gt; &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\\\\/web-component#3ds2-component\\\\&amp;quot;&amp;gt;Web 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/li&amp;gt; &amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\\\\/ios-component\\\\&amp;quot;&amp;gt;iOS 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/li&amp;gt; &amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\\\\/android-component#3ds2-component\\\\&amp;quot;&amp;gt;Android 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;threeDS2Challenge&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The payment qualifies for 3D Secure 2, and the issuer is initiating a challenge flow.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Use our 3D Secure 2 Components to present the challenge to your shopper and complete the payment: &amp;lt;ul&amp;gt; &amp;lt;li&amp;gt; &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\\\\/web-component#3ds2-component\\\\&amp;quot;&amp;gt;Web 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/li&amp;gt; &amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\\\\/ios-component\\\\&amp;quot;&amp;gt;iOS 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/li&amp;gt; &amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\\\\/android-component#3ds2-component\\\\&amp;quot;&amp;gt;Android 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;h3 id=\\\\&amp;quot;handle-the-redirect\\\\&amp;quot;&amp;gt;Handle the redirect result&amp;lt;\\\\\\\/h3&amp;gt;\\\\n&amp;lt;p&amp;gt;The redirect can be for either a &amp;lt;a href=\\\\&amp;quot;#redirect-payment-method-handle\\\\&amp;quot;&amp;gt;redirect payment method&amp;lt;\\\\\\\/a&amp;gt; or &amp;lt;a href=\\\\&amp;quot;#3ds-authentication-handle\\\\&amp;quot;&amp;gt;3D Secure authentication&amp;lt;\\\\\\\/a&amp;gt;. The instructions are different for each.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4 id=\\\\&amp;quot;redirect-payment-method-handle\\\\&amp;quot;&amp;gt;Redirect payment method&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;After the shopper completes the payment, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-raw\\\\&amp;quot;&amp;gt;   GET \\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\/1.1\\\\n   Host: www.your-company.example.com\\\\\\\/checkout&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; appended to your return URL and pass the parameters to your server.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;If a shopper completed the payment but failed to return to your website, wait for the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook&amp;lt;\\\\\\\/a&amp;gt; to know the payment result. &amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Send the additional payment details.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;h4 id=\\\\&amp;quot;3ds-authentication-handle\\\\&amp;quot;&amp;gt;3D Secure authentication&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;After completing the 3D Secure authentication, the shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. This will be appended with the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; variables:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-raw\\\\&amp;quot;&amp;gt;   POST \\\\\\\/ HTTP\\\\\\\/1.1\\\\n   Host: www.your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\n   Content-Type: application\\\\\\\/x-www-form-urlencoded\\\\n   MD=dXlER3BhTEVCazlLd1..&amp;amp;amp;PaRes=eNrNV0mTo7gS..&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;, and pass them to your server.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;If a shopper completed the payment but failed to return to your website, wait for the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook&amp;lt;\\\\\\\/a&amp;gt; to know the payment result. &amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Send the additional payment details.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v66&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66-actions_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v66&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;a8aa84acb443b5a9b294cc9ee407daa2&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If the shopper performed additional action, you need to submit additional details to either complete the payment, or to check the payment result.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabM0wJf97849\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;97849&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v67 and later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Make a  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; request, and include:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;For &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;, pass in your request:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;details&amp;lt;\\\\\\\/code&amp;gt;: Object that contains the URL-decoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;qrCode&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;await&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;sdk&amp;lt;\\\\\\\/strong&amp;gt;, or &amp;lt;strong&amp;gt;threeDS2&amp;lt;\\\\\\\/strong&amp;gt;, pass in your request the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;p&amp;gt;The following example shows how to submit additional payment details in case of a redirect.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;\\\\\\\/payments\\\\\\\/details request&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;payment-details&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;curl&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkout-test.adyen.com\\\\\\\\\\\\\\\/v72\\\\\\\\\\\\\\\/payments\\\\\\\\\\\\\\\/details \\\\\\\\\\\\\\\\\\\\\\\\n-H &amp;#039;x-api-key: ADYEN_API_KEY&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n-H &amp;#039;content-type: application\\\\\\\\\\\\\\\/json&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n-d &amp;#039;{\\\\\\\\n     \\\\\\\\&amp;amp;quot;details\\\\\\\\&amp;amp;quot;: {\\\\\\\\n       \\\\\\\\&amp;amp;quot;redirectResult\\\\\\\\&amp;amp;quot;: \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n   }\\\\\\\\n}&amp;#039;&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;java&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Java&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;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(\\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;, Environment.TEST);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\nPaymentCompletionDetails paymentCompletionDetails = new PaymentCompletionDetails()\\\\\\\\n  .redirectResult(\\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;);\\\\\\\\n\\\\\\\\nPaymentDetailsRequest paymentDetailsRequest = new PaymentDetailsRequest()\\\\\\\\n  .details(paymentCompletionDetails);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nPaymentsApi service = new PaymentsApi(client);\\\\\\\\nPaymentDetailsResponse response = service.paymentsDetails(paymentDetailsRequest, new RequestOptions().idempotencyKey(\\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot;));&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;PHP&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Adyen PHP API Library v19.0.0\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Client;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Environment;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentCompletionDetails;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentDetailsRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n$client = new Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(\\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;);\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\n$client-&amp;amp;gt;setEnvironment(Environment::TEST);\\\\\\\\n\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\n$paymentCompletionDetails = new PaymentCompletionDetails();\\\\\\\\n$paymentCompletionDetails\\\\\\\\n  -&amp;amp;gt;setRedirectResult(\\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;);\\\\\\\\n\\\\\\\\n$paymentDetailsRequest = new PaymentDetailsRequest();\\\\\\\\n$paymentDetailsRequest\\\\\\\\n  -&amp;amp;gt;setDetails($paymentCompletionDetails);\\\\\\\\n\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = &amp;#039;UUID&amp;#039;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\n$service = new PaymentsApi($client);\\\\\\\\n$response = $service-&amp;amp;gt;paymentsDetails($paymentDetailsRequest, $requestOptions);&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;cs&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;C#&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;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 = \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;,\\\\\\\\n    Environment = Environment.Test\\\\\\\\n};\\\\\\\\nvar client = new Client(config);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\nPaymentCompletionDetails paymentCompletionDetails = new PaymentCompletionDetails\\\\\\\\n{\\\\\\\\n  RedirectResult = \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n};\\\\\\\\n\\\\\\\\nPaymentDetailsRequest paymentDetailsRequest = new PaymentDetailsRequest\\\\\\\\n{\\\\\\\\n  Details = paymentCompletionDetails\\\\\\\\n};\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nvar service = new PaymentsService(client);\\\\\\\\nvar response = service.PaymentsDetails(paymentDetailsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot;});&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;NodeJS (JavaScript)&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Adyen Node API Library v18.0.0\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use\\\\\\\\nconst { Client, CheckoutAPI } = require(&amp;#039;@adyen\\\\\\\\\\\\\\\/api-library&amp;#039;);\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Initialize the client object\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nconst client = new Client({apiKey: \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;, environment: \\\\\\\\&amp;amp;quot;TEST\\\\\\\\&amp;amp;quot;});\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\nconst paymentDetailsRequest = {\\\\\\\\n  details: {\\\\\\\\n    redirectResult: \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n  }\\\\\\\\n}\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot; });&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;go&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Go&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Adyen Go API Library v10.4.0\\\\\\\\nimport (\\\\\\\\n  \\\\\\\\&amp;amp;quot;context\\\\\\\\&amp;amp;quot;\\\\\\\\n  \\\\\\\\&amp;amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/v9\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\&amp;amp;quot;\\\\\\\\n  \\\\\\\\&amp;amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/v9\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\&amp;amp;quot;\\\\\\\\n  \\\\\\\\&amp;amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/v9\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\&amp;amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n  ApiKey:      \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;,\\\\\\\\n  Environment: common.TestEnv,\\\\\\\\n})\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\npaymentCompletionDetails := checkout.PaymentCompletionDetails{\\\\\\\\n  RedirectResult: common.PtrString(\\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;),\\\\\\\\n}\\\\\\\\n\\\\\\\\npaymentDetailsRequest := checkout.PaymentDetailsRequest{\\\\\\\\n  Details: paymentCompletionDetails,\\\\\\\\n}\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nservice := client.Checkout()\\\\\\\\nreq := service.PaymentsApi.PaymentsDetailsInput().IdempotencyKey(\\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot;).PaymentDetailsRequest(paymentDetailsRequest)\\\\\\\\nres, httpRes, err := service.PaymentsApi.PaymentsDetails(context.Background(), req)&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;py&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Python&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;# Adyen Python API Library v12.5.1\\\\\\\\nimport Adyen\\\\\\\\n\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;\\\\\\\\n# For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nadyen.client.platform = \\\\\\\\&amp;amp;quot;test\\\\\\\\&amp;amp;quot; # The environment to use library in.\\\\\\\\n\\\\\\\\n# Create the request object(s)\\\\\\\\njson_request = {\\\\\\\\n  \\\\\\\\&amp;amp;quot;details\\\\\\\\&amp;amp;quot;: {\\\\\\\\n    \\\\\\\\&amp;amp;quot;redirectResult\\\\\\\\&amp;amp;quot;: \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n  }\\\\\\\\n}\\\\\\\\n\\\\\\\\n# Send the request\\\\\\\\nresult = adyen.checkout.payments_api.payments_details(request=json_request, idempotency_key=\\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot;)&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;rb&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Ruby&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;# Adyen Ruby API Library v9.5.1\\\\\\\\nrequire \\\\\\\\&amp;amp;quot;adyen-ruby-api-library\\\\\\\\&amp;amp;quot;\\\\\\\\n\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\n# For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nadyen.env = :test # Set to \\\\\\\\&amp;amp;quot;live\\\\\\\\&amp;amp;quot; for live environment\\\\\\\\n\\\\\\\\n# Create the request object(s)\\\\\\\\nrequest_body = {\\\\\\\\n  :details =&amp;amp;gt; {\\\\\\\\n    :redirectResult =&amp;amp;gt; &amp;#039;eyJ0cmFuc1N0YXR1cyI6IlkifQ==&amp;#039;\\\\\\\\n  }\\\\\\\\n}\\\\\\\\n\\\\\\\\n# Send the request\\\\\\\\nresult = adyen.checkout.payments_api.payments_details(request_body, headers: { &amp;#039;Idempotency-Key&amp;#039; =&amp;amp;gt; &amp;#039;UUID&amp;#039; })&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ts&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;NodeJS (TypeScript)&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Adyen Node API Library v18.0.0\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use\\\\\\\\nimport { Client, CheckoutAPI, Types } from \\\\\\\\&amp;amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Initialize the client object\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nconst client = new Client({apiKey: \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;, environment: \\\\\\\\&amp;amp;quot;TEST\\\\\\\\&amp;amp;quot;});\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\nconst paymentCompletionDetails: Types.checkout.PaymentCompletionDetails = {\\\\\\\\n  redirectResult: \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n};\\\\\\\\n\\\\\\\\nconst paymentDetailsRequest: Types.checkout.PaymentDetailsRequest = {\\\\\\\\n  details: paymentCompletionDetails\\\\\\\\n};\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot; });&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;The response includes:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;pspReference&amp;lt;\\\\\\\/code&amp;gt;: Our unique identifier for the transaction.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;resultCode&amp;lt;\\\\\\\/code&amp;gt;: Indicates the status of the payment.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v67&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67-details_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v67&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v66 and earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Make a  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; request, and include:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;For &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;, pass in your request:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;details&amp;lt;\\\\\\\/code&amp;gt;: The URL-decoded parameters you received when the shopper was returned to your website.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;paymentData&amp;lt;\\\\\\\/code&amp;gt;: The value from the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response that you stored in your server.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;For &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;qrCode&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;await&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;sdk&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;threeDS2Fingerprint&amp;lt;\\\\\\\/strong&amp;gt;, or &amp;lt;strong&amp;gt;threeDS2Challenge&amp;lt;\\\\\\\/strong&amp;gt;, pass in your request the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;p&amp;gt;The following example shows how to submit additional payment details in case you received an &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Depending on the payment result,  you receive a response containing:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;resultCode&amp;lt;\\\\\\\/code&amp;gt;: Provides information about the result of the request.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;pspReference&amp;lt;\\\\\\\/code&amp;gt;: Our unique identifier for the transaction.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt;: If you receive this object, &amp;lt;a href=\\\\&amp;quot;#additional-action\\\\&amp;quot;&amp;gt;handle the additional action&amp;lt;\\\\\\\/a&amp;gt; again.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;p&amp;gt;If the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; response does not contain an &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v66&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66-details_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v66&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Successful payment response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Refused response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n  \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;fcd595f92bfb3275bbae5df546a360ff&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After the Component finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;&lt;code&gt;resultCode&lt;\\\/code&gt;&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Alternatively, you can use the &lt;code&gt;dropin.setStatus&lt;\\\/code&gt; to show a customized message. For example:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-js\\&quot;&gt;  \\\/\\\/ Show a success message\\n  dropin.setStatus(&#039;success&#039;);\\n  dropin.setStatus(&#039;success&#039;, { message: &#039;Payment successful!&#039; });\\n\\n  \\\/\\\/ Show an error message\\n  dropin.setStatus(&#039;error&#039;);\\n  dropin.setStatus(&#039;error&#039;, { message: &#039;Something went wrong.&#039;});\\n\\n  \\\/\\\/ Set a loading state\\n  dropin.setStatus(&#039;loading&#039;); \\\/\\\/ start the loading state\\n  dropin.setStatus(&#039;ready&#039;); \\\/\\\/ set back to the initial state&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;h2 id=\\&quot;error-handling\\&quot;&gt;Error handling&lt;\\\/h2&gt;\\n&lt;p&gt;In case you encounter errors in your integration, refer to the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/error-codes\\&quot;&gt;API error codes&lt;\\\/a&gt;: If you receive a non-HTTP 200 response, use the &lt;code&gt;errorCode&lt;\\\/code&gt; to troubleshoot and modify your request.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/refusal-reasons\\&quot;&gt;Payment refusals&lt;\\\/a&gt;: If you receive an HTTP 200 response with an &lt;strong&gt;Error&lt;\\\/strong&gt; or &lt;strong&gt;Refused&lt;\\\/strong&gt; &lt;code&gt;resultCode&lt;\\\/code&gt;, check the refusal reason and, if possible, modify your request.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h2 id=\\&quot;testing-your-integration\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?=1#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;Load Drop-in from one of our live environments and set the &lt;code&gt;environment&lt;\\\/code&gt; to match your live endpoints:&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;environment&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-au&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;US&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-us&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Asia Pacific South East&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-apse&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;7be511879401fffc62548f8712a5de12&quot;:&quot;&lt;h2 id=\\&quot;see-also\\&quot;&gt;See also&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;see-also-links output-inline\\&quot; id=\\&quot;see-also14801\\&quot;&gt;\\n&lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    Tokenization\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    3D Secure\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    PCI DSS compliance guide\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/uplift\\\/uplift-requirements\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    Adyen Uplift requirements and recommendations\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/div&gt;\\n&quot;,&quot;636bff5dad2bdbda16af43f74c03dd14&quot;:&quot;&lt;h2 id=\\&quot;next-steps\\&quot;&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps82541\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Modify payments&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods#add-payment-methods-to-your-account\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Tokenization&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Save shopper payment details for later payments.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;f53798e54f64765d065804fade9015ef&quot;:&quot;&lt;h2 id=\\&quot;how-it-works\\&quot;&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Components integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client website&lt;\\\/strong&gt;: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client website. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps65926\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#add\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client website.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a rel=\\&quot;lightbox\\&quot; href=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/web\\\/4-6-0\\\/components\\\/01.how-it-works\\\/components-flow.jpg\\&quot; src=\\&quot;\\&quot;&gt;\\n  &lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/web\\\/4-6-0\\\/components\\\/01.how-it-works\\\/components-flow.jpg\\&quot; \\\/&gt;\\n&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, submit a request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#add\\&quot;&gt;Add the specific payment method Component&lt;\\\/a&gt; to your payments form.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;submit a payment request&lt;\\\/a&gt; with the data returned by the Component.&lt;\\\/li&gt;\\n&lt;li&gt;Determine from the response if you need to perform additional actions on your client website, such as to &lt;a href=\\&quot;#additional-action\\&quot;&gt;redirect the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;submit additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;31e35a6d3b3b973bbbb3e095b8e8768f&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;Configuring Components&lt;\\\/h3&gt;\\n&lt;p&gt;You can include the following additional configuration when instantiating Components on your payments form:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;sc-notice info\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;You can also override the values that you set here by specifying these parameters for individual payment methods at the Component level.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/div&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Configuration object&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Set to &lt;strong&gt;true&lt;\\\/strong&gt; to use our pre-built &lt;strong&gt;Pay&lt;\\\/strong&gt; button for each payment method. The &lt;strong&gt;Pay&lt;\\\/strong&gt; button triggers the &lt;code&gt;onSubmit&lt;\\\/code&gt; event. &lt;br&gt; &lt;p&gt;&lt;\\\/p&gt; If you want to use your own button and then trigger the submit flow on your own, set this to &lt;strong&gt;false&lt;\\\/strong&gt; and call the &lt;code&gt;.submit()&lt;\\\/code&gt; method from your own button implementation. For example, &lt;code&gt;component.submit()&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Amount to be displayed on the &lt;strong&gt;Pay&lt;\\\/strong&gt; Button. It expects an object with the value and currency properties. For example, &lt;code&gt;{ value: 1000, currency: &#039;USD&#039; }&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;setStatusAutomatically&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Set to &lt;strong&gt;false&lt;\\\/strong&gt; to not set the Component status to &lt;code&gt;&#039;loading&#039;&lt;\\\/code&gt; when &lt;code&gt;onSubmit&lt;\\\/code&gt; is triggered. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;ebe93a6cb44629b753c13402a2100ca7&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper submits their payment details or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a  &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;state.data.paymentMethod&lt;\\\/code&gt; from the &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client website.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;URL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;. You can also include your own additional query parameters, for example, shopper ID or order reference number.  &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;riskData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/risk-management\\\/fraud-data-collection\\&quot;&gt;Device characteristics and other data&lt;\\\/a&gt; that we use to detect fraudulent payment activity, and mitigate fraud.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-web-earlier&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n\\\\t    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n\\\\t   \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nRiskData riskData = new RiskData()\\\\n  .clientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  .riskData(riskData);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\RiskData;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$riskData = new RiskData();\\\\n$riskData\\\\n  -&amp;gt;setClientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  -&amp;gt;setRiskData($riskData);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.2\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nRiskData riskData = new RiskData\\\\n{\\\\n  ClientData = \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData = riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: {\\\\n    type: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: {\\\\n    clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\nriskData := checkout.RiskData{\\\\n  ClientData: common.PtrString(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData: &amp;amp;riskData,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;,\\\\n  :riskData =&amp;gt; {\\\\n    :clientData =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==&#039;\\\\n  },\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst riskData: Types.checkout.RiskData = {\\\\n  clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabDNLHF64486\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;64486&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v67 or later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;If the response has no &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;If the response contains an &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#additional-action\\\\&amp;quot;&amp;gt;handle the additional action&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example response with a redirect action&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;v67-redirect-response&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n  \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n    \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\\\\\\\\\/checkoutshopper\\\\\\\\\\\\\\\/checkoutPaymentRedirect?...\\\\\\\\\\\\&amp;quot;\\\\\\\\n  }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v67&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67-payments-response_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v67&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v66 or later earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;If the response has no &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;If the response contains an &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#additional-action\\\\&amp;quot;&amp;gt;handle the additional action&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example response with a redirect action&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;v66-redirect-response&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n  \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n    \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n  }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v66&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66-payments-response_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v66&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;9b779654b45f2e02319055ee928e2fe4&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that you can add payment methods that require additional actions.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;To see if a specific payment method requires an additional action, go to the &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;div id=\\&quot;tabptSez75171\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;75171&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Component v3.6.0 or later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Call &amp;lt;code&amp;gt;handleAction&amp;lt;\\\\\\\/code&amp;gt;, passing the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object from the previous step. Your next steps depend on the type of action that the Component performs:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;handle-action&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;handle-action_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Component v3.5.0 or earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Call &amp;lt;code&amp;gt;createFromAction&amp;lt;\\\\\\\/code&amp;gt;, passing the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object from the previous step. This returns a new Component that you must mount:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-js\\\\&amp;quot;&amp;gt;checkout.createFromAction(action).mount(&amp;#039;#my-container&amp;#039;);&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The Component performs additional front-end actions, depending on the &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;. Your next steps depend on the type of action that the Component performs:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;create-from-action&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;create-from-action_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n\\n&lt;div id=\\&quot;tabjNr0w75171\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;75171&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v67 and later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;&amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Next steps&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;voucher&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component shows the voucher which the shopper &amp;lt;br&amp;gt; uses to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;Get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component redirects the shopper to another website or app &amp;lt;br&amp;gt;to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. When the shopper returns to your website, your server needs to &amp;lt;a href=\\\\&amp;quot;#handle-the-redirect-v67\\\\&amp;quot;&amp;gt;handle the redirect result&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;qrCode&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component presents the QR code &amp;lt;br&amp;gt; and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;await&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component shows the waiting screen while the shopper completes the payment. &amp;lt;br&amp;gt; Depending on the payment outcome, the Component calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;onError&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; object from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;onError&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;sdk&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component presents the specific payment method&amp;#039;s UI as an overlay &amp;lt;br&amp;gt; and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;threeDS2&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The payment qualifies for 3D Secure 2, and will go through either the frictionless or the challenge flow.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Pass the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object to your client website. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\&amp;quot;&amp;gt;Use the 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt; to perform the authentication flow and to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;h3 id=\\\\&amp;quot;handle-the-redirect-67\\\\&amp;quot;&amp;gt;Handle the redirect result&amp;lt;\\\\\\\/h3&amp;gt;\\\\n&amp;lt;p&amp;gt;When the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt; &amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;, the Component redirects your shopper to another website to complete the payment or go through 3D Secure redirect authentication.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;After the shopper completes the payment or authentication, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with an HTTP GET. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-raw\\\\&amp;quot;&amp;gt;  GET \\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\/1.1\\\\n  Host: www.your-company.example.com\\\\\\\/checkout&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;Get the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; appended to your return URL and pass it to your server.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;If a shopper completed the payment but failed to return to your website, wait for the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook&amp;lt;\\\\\\\/a&amp;gt; to know the payment result. &amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ol start=\\\\&amp;quot;2\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v67&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67-actions_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v67&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v66 and earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;&amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Next steps&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;voucher&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component shows the voucher which the shopper &amp;lt;br&amp;gt; uses to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;Get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component redirects the shopper to another website or app &amp;lt;br&amp;gt;to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. When the shopper returns to your website, your server needs to &amp;lt;a href=\\\\&amp;quot;#handle-the-redirect\\\\&amp;quot;&amp;gt;handle the redirect result&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;qrCode&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component presents the QR code &amp;lt;br&amp;gt; and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;await&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component shows the waiting screen while the shopper completes the payment. &amp;lt;br&amp;gt; Depending on the payment outcome, the Component calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;onError&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; object from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;onError&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;sdk&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Component presents the specific payment method&amp;#039;s UI as an overlay &amp;lt;br&amp;gt; and calls the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Get the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event and pass it your server. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to check the payment result.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;threeDS2Fingerprint&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The payment qualifies for 3D Secure 2, and will go through either the frictionless or the challenge flow.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Use our 3D Secure 2 Components to get the device fingerprint and complete the payment:&amp;lt;ul&amp;gt; &amp;lt;li&amp;gt; &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\\\\/web-component#3ds2-component\\\\&amp;quot;&amp;gt;Web 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/li&amp;gt; &amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\\\\/ios-component\\\\&amp;quot;&amp;gt;iOS 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/li&amp;gt; &amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\\\\/android-component#3ds2-component\\\\&amp;quot;&amp;gt;Android 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;strong&amp;gt;threeDS2Challenge&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The payment qualifies for 3D Secure 2, and the issuer is initiating a challenge flow.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Use our 3D Secure 2 Components to present the challenge to your shopper and complete the payment: &amp;lt;ul&amp;gt; &amp;lt;li&amp;gt; &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\\\\/web-component#3ds2-component\\\\&amp;quot;&amp;gt;Web 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/li&amp;gt; &amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\\\\/ios-component\\\\&amp;quot;&amp;gt;iOS 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/li&amp;gt; &amp;lt;li&amp;gt;&amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/native-3ds2\\\\\\\/android-component#3ds2-component\\\\&amp;quot;&amp;gt;Android 3D Secure 2 Component&amp;lt;\\\\\\\/a&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;h3 id=\\\\&amp;quot;handle-the-redirect\\\\&amp;quot;&amp;gt;Handle the redirect result&amp;lt;\\\\\\\/h3&amp;gt;\\\\n&amp;lt;p&amp;gt;The redirect can be for either a &amp;lt;a href=\\\\&amp;quot;#redirect-payment-method-handle\\\\&amp;quot;&amp;gt;redirect payment method&amp;lt;\\\\\\\/a&amp;gt; or &amp;lt;a href=\\\\&amp;quot;#3ds-authentication-handle\\\\&amp;quot;&amp;gt;3D Secure authentication&amp;lt;\\\\\\\/a&amp;gt;. The instructions are different for each.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4 id=\\\\&amp;quot;redirect-payment-method-handle\\\\&amp;quot;&amp;gt;Redirect payment method&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;After the shopper completes the payment, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-raw\\\\&amp;quot;&amp;gt;   GET \\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\/1.1\\\\n   Host: www.your-company.example.com\\\\\\\/checkout&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; appended to your return URL and pass the parameters to your server.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;If a shopper completed the payment but failed to return to your website, wait for the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook&amp;lt;\\\\\\\/a&amp;gt; to know the payment result. &amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Send the additional payment details.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;h4 id=\\\\&amp;quot;3ds-authentication-handle\\\\&amp;quot;&amp;gt;3D Secure authentication&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;After completing the 3D Secure authentication, the shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. This will be appended with the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; variables:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-raw\\\\&amp;quot;&amp;gt;   POST \\\\\\\/ HTTP\\\\\\\/1.1\\\\n   Host: www.your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\n   Content-Type: application\\\\\\\/x-www-form-urlencoded\\\\n   MD=dXlER3BhTEVCazlLd1..&amp;amp;amp;PaRes=eNrNV0mTo7gS..&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;, and pass them to your server.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;If a shopper completed the payment but failed to return to your website, wait for the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook&amp;lt;\\\\\\\/a&amp;gt; to know the payment result. &amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Send the additional payment details.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v66&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66-actions_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v66&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;26c1dd1e9c6cd3edd617fe474708528a&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If the shopper performed additional action, you need to submit additional details to either complete the payment, or to check the payment result.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabW3ZAF70491\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;70491&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v67 and later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Make a  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; request, and include:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;For &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;, pass in your request:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;details&amp;lt;\\\\\\\/code&amp;gt;: Object that contains the URL-decoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;qrCode&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;await&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;sdk&amp;lt;\\\\\\\/strong&amp;gt;, or &amp;lt;strong&amp;gt;threeDS2&amp;lt;\\\\\\\/strong&amp;gt;, pass in your request the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;p&amp;gt;The following example shows how to submit additional payment details in case of a redirect.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;\\\\\\\/payments\\\\\\\/details request&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;payment-details&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;curl&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkout-test.adyen.com\\\\\\\\\\\\\\\/v72\\\\\\\\\\\\\\\/payments\\\\\\\\\\\\\\\/details \\\\\\\\\\\\\\\\\\\\\\\\n-H &amp;#039;x-api-key: ADYEN_API_KEY&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n-H &amp;#039;content-type: application\\\\\\\\\\\\\\\/json&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n-d &amp;#039;{\\\\\\\\n     \\\\\\\\&amp;amp;quot;details\\\\\\\\&amp;amp;quot;: {\\\\\\\\n       \\\\\\\\&amp;amp;quot;redirectResult\\\\\\\\&amp;amp;quot;: \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n   }\\\\\\\\n}&amp;#039;&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;java&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Java&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;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(\\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;, Environment.TEST);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\nPaymentCompletionDetails paymentCompletionDetails = new PaymentCompletionDetails()\\\\\\\\n  .redirectResult(\\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;);\\\\\\\\n\\\\\\\\nPaymentDetailsRequest paymentDetailsRequest = new PaymentDetailsRequest()\\\\\\\\n  .details(paymentCompletionDetails);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nPaymentsApi service = new PaymentsApi(client);\\\\\\\\nPaymentDetailsResponse response = service.paymentsDetails(paymentDetailsRequest, new RequestOptions().idempotencyKey(\\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot;));&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;PHP&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Adyen PHP API Library v19.0.0\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Client;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Environment;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentCompletionDetails;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentDetailsRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n$client = new Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(\\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;);\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\n$client-&amp;amp;gt;setEnvironment(Environment::TEST);\\\\\\\\n\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\n$paymentCompletionDetails = new PaymentCompletionDetails();\\\\\\\\n$paymentCompletionDetails\\\\\\\\n  -&amp;amp;gt;setRedirectResult(\\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;);\\\\\\\\n\\\\\\\\n$paymentDetailsRequest = new PaymentDetailsRequest();\\\\\\\\n$paymentDetailsRequest\\\\\\\\n  -&amp;amp;gt;setDetails($paymentCompletionDetails);\\\\\\\\n\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = &amp;#039;UUID&amp;#039;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\n$service = new PaymentsApi($client);\\\\\\\\n$response = $service-&amp;amp;gt;paymentsDetails($paymentDetailsRequest, $requestOptions);&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;cs&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;C#&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;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 = \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;,\\\\\\\\n    Environment = Environment.Test\\\\\\\\n};\\\\\\\\nvar client = new Client(config);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\nPaymentCompletionDetails paymentCompletionDetails = new PaymentCompletionDetails\\\\\\\\n{\\\\\\\\n  RedirectResult = \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n};\\\\\\\\n\\\\\\\\nPaymentDetailsRequest paymentDetailsRequest = new PaymentDetailsRequest\\\\\\\\n{\\\\\\\\n  Details = paymentCompletionDetails\\\\\\\\n};\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nvar service = new PaymentsService(client);\\\\\\\\nvar response = service.PaymentsDetails(paymentDetailsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot;});&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;NodeJS (JavaScript)&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Adyen Node API Library v18.0.0\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use\\\\\\\\nconst { Client, CheckoutAPI } = require(&amp;#039;@adyen\\\\\\\\\\\\\\\/api-library&amp;#039;);\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Initialize the client object\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nconst client = new Client({apiKey: \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;, environment: \\\\\\\\&amp;amp;quot;TEST\\\\\\\\&amp;amp;quot;});\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\nconst paymentDetailsRequest = {\\\\\\\\n  details: {\\\\\\\\n    redirectResult: \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n  }\\\\\\\\n}\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot; });&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;go&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Go&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Adyen Go API Library v10.4.0\\\\\\\\nimport (\\\\\\\\n  \\\\\\\\&amp;amp;quot;context\\\\\\\\&amp;amp;quot;\\\\\\\\n  \\\\\\\\&amp;amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/v9\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\&amp;amp;quot;\\\\\\\\n  \\\\\\\\&amp;amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/v9\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\&amp;amp;quot;\\\\\\\\n  \\\\\\\\&amp;amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/v9\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\&amp;amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n  ApiKey:      \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;,\\\\\\\\n  Environment: common.TestEnv,\\\\\\\\n})\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\npaymentCompletionDetails := checkout.PaymentCompletionDetails{\\\\\\\\n  RedirectResult: common.PtrString(\\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;),\\\\\\\\n}\\\\\\\\n\\\\\\\\npaymentDetailsRequest := checkout.PaymentDetailsRequest{\\\\\\\\n  Details: paymentCompletionDetails,\\\\\\\\n}\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nservice := client.Checkout()\\\\\\\\nreq := service.PaymentsApi.PaymentsDetailsInput().IdempotencyKey(\\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot;).PaymentDetailsRequest(paymentDetailsRequest)\\\\\\\\nres, httpRes, err := service.PaymentsApi.PaymentsDetails(context.Background(), req)&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;py&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Python&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;# Adyen Python API Library v12.5.1\\\\\\\\nimport Adyen\\\\\\\\n\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;\\\\\\\\n# For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nadyen.client.platform = \\\\\\\\&amp;amp;quot;test\\\\\\\\&amp;amp;quot; # The environment to use library in.\\\\\\\\n\\\\\\\\n# Create the request object(s)\\\\\\\\njson_request = {\\\\\\\\n  \\\\\\\\&amp;amp;quot;details\\\\\\\\&amp;amp;quot;: {\\\\\\\\n    \\\\\\\\&amp;amp;quot;redirectResult\\\\\\\\&amp;amp;quot;: \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n  }\\\\\\\\n}\\\\\\\\n\\\\\\\\n# Send the request\\\\\\\\nresult = adyen.checkout.payments_api.payments_details(request=json_request, idempotency_key=\\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot;)&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;rb&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Ruby&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;# Adyen Ruby API Library v9.5.1\\\\\\\\nrequire \\\\\\\\&amp;amp;quot;adyen-ruby-api-library\\\\\\\\&amp;amp;quot;\\\\\\\\n\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\n# For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nadyen.env = :test # Set to \\\\\\\\&amp;amp;quot;live\\\\\\\\&amp;amp;quot; for live environment\\\\\\\\n\\\\\\\\n# Create the request object(s)\\\\\\\\nrequest_body = {\\\\\\\\n  :details =&amp;amp;gt; {\\\\\\\\n    :redirectResult =&amp;amp;gt; &amp;#039;eyJ0cmFuc1N0YXR1cyI6IlkifQ==&amp;#039;\\\\\\\\n  }\\\\\\\\n}\\\\\\\\n\\\\\\\\n# Send the request\\\\\\\\nresult = adyen.checkout.payments_api.payments_details(request_body, headers: { &amp;#039;Idempotency-Key&amp;#039; =&amp;amp;gt; &amp;#039;UUID&amp;#039; })&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ts&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;NodeJS (TypeScript)&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Adyen Node API Library v18.0.0\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use\\\\\\\\nimport { Client, CheckoutAPI, Types } from \\\\\\\\&amp;amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Initialize the client object\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ For the live environment, additionally include your liveEndpointUrlPrefix.\\\\\\\\nconst client = new Client({apiKey: \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;, environment: \\\\\\\\&amp;amp;quot;TEST\\\\\\\\&amp;amp;quot;});\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the request object(s)\\\\\\\\nconst paymentCompletionDetails: Types.checkout.PaymentCompletionDetails = {\\\\\\\\n  redirectResult: \\\\\\\\&amp;amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\\\\\&amp;amp;quot;\\\\\\\\n};\\\\\\\\n\\\\\\\\nconst paymentDetailsRequest: Types.checkout.PaymentDetailsRequest = {\\\\\\\\n  details: paymentCompletionDetails\\\\\\\\n};\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Send the request\\\\\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\\\\\&amp;amp;quot;UUID\\\\\\\\&amp;amp;quot; });&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;The response includes:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;pspReference&amp;lt;\\\\\\\/code&amp;gt;: Our unique identifier for the transaction.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;resultCode&amp;lt;\\\\\\\/code&amp;gt;: Indicates the status of the payment.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v67&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67-details_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v67&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v66 and earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Make a  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; request, and include:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;For &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;redirect&amp;lt;\\\\\\\/strong&amp;gt;, pass in your request:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;details&amp;lt;\\\\\\\/code&amp;gt;: The URL-decoded parameters you received when the shopper was returned to your website.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;paymentData&amp;lt;\\\\\\\/code&amp;gt;: The value from the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response that you stored in your server.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;For &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;qrCode&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;await&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;sdk&amp;lt;\\\\\\\/strong&amp;gt;, &amp;lt;strong&amp;gt;threeDS2Fingerprint&amp;lt;\\\\\\\/strong&amp;gt;, or &amp;lt;strong&amp;gt;threeDS2Challenge&amp;lt;\\\\\\\/strong&amp;gt;, pass in your request the &amp;lt;code&amp;gt;state.data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;p&amp;gt;The following example shows how to submit additional payment details in case you received an &amp;lt;code&amp;gt;onAdditionalDetails&amp;lt;\\\\\\\/code&amp;gt; event.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Depending on the payment result,  you receive a response containing:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;resultCode&amp;lt;\\\\\\\/code&amp;gt;: Provides information about the result of the request.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;pspReference&amp;lt;\\\\\\\/code&amp;gt;: Our unique identifier for the transaction.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt;: If you receive this object, &amp;lt;a href=\\\\&amp;quot;#additional-action\\\\&amp;quot;&amp;gt;handle the additional action&amp;lt;\\\\\\\/a&amp;gt; again.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;p&amp;gt;If the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; response does not contain an &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v66&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66-details_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v66&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Successful payment response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Refused response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n  \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;f3b759b751c98d2abee962d6fb19c74e&quot;:&quot;&lt;h2 id=\\&quot;see-also\\&quot;&gt;See also&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;see-also-links output-inline\\&quot; id=\\&quot;see-also28858\\&quot;&gt;\\n&lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    Tokenization\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    3D Secure\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    PCI DSS compliance guide\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/uplift\\\/uplift-requirements\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    Adyen Uplift requirements and recommendations\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/div&gt;\\n&quot;,&quot;0ee5de37c76eb6aa2b6d1ccb2a038123&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Components to your payments form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Next, use the Component to render the payment method, and collect the required payment details from your shopper. Install the Adyen Web Node package or use a &lt;code&gt;&amp;lt;script&amp;gt;&lt;\\\/code&gt; tag.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabkFbRo8942\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;8942&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;npm (recommended)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Install the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/package\\\\\\\/@adyen\\\\\\\/adyen-web\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Adyen Web Node package&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install @adyen\\\\\\\\\\\\\\\/adyen-web --save\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Import Adyen Web into your application:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;import { AdyenCheckout } from &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web&amp;#039;;\\\\\\\\nimport &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web\\\\\\\\\\\\\\\/styles\\\\\\\\\\\\\\\/adyen.css&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;npm_(recommended)_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Embed script and stylesheet&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Include the following script in the\\\\u00a0&amp;lt;code&amp;gt;&amp;amp;lt;body&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;\\\\u00a0above any other JavaScript in your checkout page:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;We recommend that you also validate the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/web-best-practices#implement-subresource-integrity-hashes\\\\&amp;quot;&amp;gt;Subresource Integrity (SRI) hash&amp;lt;\\\\\\\/a&amp;gt;, which we provide for each version of our JavaScript and CSS files. You can find the SRI hashes in our &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/release-notes\\\\&amp;quot;&amp;gt;release notes&amp;lt;\\\\\\\/a&amp;gt;, under &amp;lt;strong&amp;gt;Updating to this version&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;script src=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.js\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-KF6Y8NQXGnIuzqJn5rcqCe6dMy7gBWobcIKr1BmIaz6pOeBAV0hrHBBMbHC\\\\\\\/inHu\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;&amp;amp;lt;\\\\\\\/script&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute.--&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Use the following CSS file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;link rel=\\\\&amp;quot;stylesheet\\\\&amp;quot; href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.css\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-uwMmo3xJR0e9jI+Oi5kzu43ShY0pXrb3auIlCjLjMNtl0X8Nat55eXNqwj8xU6H9\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute. --&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;embed_script_and_stylesheet_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;&amp;emsp;&amp;emsp;&amp;nbsp;You can &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;add your own styling&lt;\\\/a&gt; by overriding the rules in this CSS file.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a DOM element on your checkout page,\\u00a0placing it where you want the payment method form to be rendered.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create DOM element&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;xml\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;&amp;lt;div id=\\\\\\&quot;component-container\\\\\\&quot;&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;If you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a id=\\&quot;adyencheckout\\&quot;&gt;&lt;\\\/a&gt; Create a &lt;code&gt;configuration&lt;\\\/code&gt; object with the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response returned &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;when you get available payment methods&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;locale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. This is used to set the language rendered in the UI. For a list of supported locales, see\\u00a0&lt;a href=\\&quot;\\\/online-payments\\\/web-components\\\/localization-components\\&quot;&gt;Localization&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/drop-in-web#testing-your-integration\\&quot;&gt;live environments&lt;\\\/a&gt;.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler for this event, which is called when the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button. &lt;br&gt; This applies if the &lt;a href=\\&quot;#configure\\&quot;&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt; configuration parameter&lt;\\\/a&gt; is set to &lt;strong&gt;true&lt;\\\/strong&gt;. &lt;br&gt; In the example below, the handler is named &lt;code&gt;handleOnSubmit&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler for this event, used for native 3D Secure 2, and for native QR code payment methods. In the example below, the handler is named &lt;code&gt;handleOnAdditionalDetails&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; and &lt;code&gt;value&lt;\\\/code&gt; of the transaction.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Configure the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;function handleOnSubmit(state, component) {\\\\n    state.isValid \\\\\\\/\\\\\\\/ True or false. Specifies if all the information that the shopper provided is valid.\\\\n    state.data \\\\\\\/\\\\\\\/ Provides the data that you must include when you make the POST \\\\\\\/payments request.\\\\n    component \\\\\\\/\\\\\\\/ Provides the active instance of the Component that called this event.\\\\n}\\\\n\\\\nfunction handleOnAdditionalDetails(state, component) {\\\\n    state.data \\\\\\\/\\\\\\\/ Provides the data that you must include when you make the POST \\\\\\\/payments\\\\\\\/details request.\\\\n    component \\\\\\\/\\\\\\\/ Provides the active instance of the Component that called this event.\\\\n}\\\\n\\\\nconst configuration = {\\\\n    locale: \\\\&amp;quot;en_US\\\\&amp;quot;, \\\\\\\/\\\\\\\/ The shopper&#039;s locale. For a list of supported locales, see\\\\u00a0https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/web-components\\\\\\\/localization-components.\\\\n    environment: \\\\&amp;quot;test\\\\&amp;quot;, \\\\\\\/\\\\\\\/ When you are ready to accept live payments, change the value to one of our live environments https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/components-web#testing-your-integration.\\\\n    clientKey: \\\\&amp;quot;YOUR_CLIENT_KEY\\\\&amp;quot;, \\\\\\\/\\\\\\\/ Your client key. To find out how to generate one, see\\\\u00a0https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/development-resources\\\\\\\/client-side-authentication. Web Components versions before 3.10.1 use originKey instead of clientKey.\\\\n    analytics: {\\\\n      enabled: true \\\\\\\/\\\\\\\/ Set to false to not send analytics data to Adyen.\\\\n    },\\\\n    paymentMethodsResponse: paymentMethodsResponse, \\\\\\\/\\\\\\\/ The payment methods response returned from the POST \\\\\\\/paymentMethods request.\\\\n    showPayButton: true, \\\\\\\/\\\\\\\/ Set to false if you do not want to use the pre-built Pay button.\\\\n    onSubmit: handleOnSubmit, \\\\\\\/\\\\\\\/ Your function for handling the onSubmit event.\\\\n    amount: {  \\\\\\\/\\\\\\\/ Optional. Shows the amount on the Pay button.\\\\n        value: 1000,\\\\n        currency: &#039;EUR&#039;\\\\n    },\\\\n    onAdditionalDetails: handleOnAdditionalDetails \\\\\\\/\\\\\\\/ Your function for handling the onAdditionalDetails event.\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use the &lt;code&gt;configuration&lt;\\\/code&gt; object to create an instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create an instance of AdyenCheckout&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;const checkout = await AdyenCheckout(configuration);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Then use the &lt;code&gt;checkout.create&lt;\\\/code&gt; method to create and mount an instance of the payment method Component.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Some payment method Components require additional configuration. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For example, to mount the Card Component using its component name, &lt;code&gt;card&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Mount the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const card = checkout.create(&#039;card&#039;).mount(&#039;#component-container&#039;);&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;You can also include &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/web-component#component-configuration\\&quot;&gt;optional Card Component configuration&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;When the shopper enters the payment details and selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, the Component calls the &lt;code&gt;onSubmit&lt;\\\/code&gt; event. If &lt;code&gt;state.isValid&lt;\\\/code&gt; is &lt;strong&gt;true&lt;\\\/strong&gt;, use the data in &lt;code&gt;state.data&lt;\\\/code&gt; to make the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;state from onChange event for Card Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    isValid: true,\\\\n    data: {\\\\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    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;c2f68bcb87d56f9048d25e4a84528573&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper submits their payment details or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a  &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;state.data.paymentMethod&lt;\\\/code&gt; from the &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client website.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;URL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;. You can also include your own additional query parameters, for example, shopper ID or order reference number.  &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;riskData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/risk-management\\\/fraud-data-collection\\&quot;&gt;Device characteristics and other data&lt;\\\/a&gt; that we use to detect fraudulent payment activity, and mitigate fraud.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-web-earlier&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n\\\\t    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n\\\\t   \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nRiskData riskData = new RiskData()\\\\n  .clientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  .riskData(riskData);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\RiskData;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$riskData = new RiskData();\\\\n$riskData\\\\n  -&amp;gt;setClientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  -&amp;gt;setRiskData($riskData);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.2\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nRiskData riskData = new RiskData\\\\n{\\\\n  ClientData = \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData = riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: {\\\\n    type: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: {\\\\n    clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\nriskData := checkout.RiskData{\\\\n  ClientData: common.PtrString(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData: &amp;amp;riskData,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;,\\\\n  :riskData =&amp;gt; {\\\\n    :clientData =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==&#039;\\\\n  },\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst riskData: Types.checkout.RiskData = {\\\\n  clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with a redirect action&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?...\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;d61b2f54de5a256cafebb83917ad7fff&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;To handle the additional action:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Pass the &lt;code&gt;action&lt;\\\/code&gt; object from your server to the &lt;code&gt;handleAction&lt;\\\/code&gt; function.&lt;\\\/li&gt;\\n&lt;li&gt;The Component performs the additional action on the client side.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;You handle the payment data, depending on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;).&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, the Component redirects your shopper to another website to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper returns to your website, they are returned to your &lt;code&gt;returnUrl&lt;\\\/code&gt; with an HTTP GET request. The &lt;code&gt;returnUrl&lt;\\\/code&gt; is appended with a Base64-encoded &lt;code&gt;redirectResult&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example return URL&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;raw\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;GET \\\\\\\/?shopperOrder=12xy..&amp;amp;&amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\/1.1\\\\nHost: www.your-company.example.com\\\\\\\/checkout\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;If the shopper fails to return to your website, you do not get the &lt;code&gt;redirectResult&lt;\\\/code&gt;. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;To process the result:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Get the &lt;code&gt;redirectResult&lt;\\\/code&gt; appended to your return URL. You do not need to decode it.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;redirectResult&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example JavaScript code snippet to handle redirectResult&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;function handleRedirectResult() {\\\\n\\\\n  \\\\\\\/\\\\\\\/ 1. Get the redirectResult from your return URL.\\\\n  const urlParams = new URLSearchParams(window.location.search);\\\\n  const redirectResult = urlParams.get(&#039;redirectResult&#039;);\\\\n\\\\n  if (redirectResult) {\\\\n    \\\\\\\/\\\\\\\/ 2. Pass the redirectResult to your server.\\\\n    \\\\\\\/\\\\\\\/ 3. Your server makes the \\\\\\\/payments\\\\\\\/details request. Adyen&#039;s server processes the encoded redirectResult value.\\\\n    fetch(&#039;\\\\\\\/api\\\\\\\/handle-payment-redirect&#039;, {\\\\n      method: &#039;POST&#039;,\\\\n      headers: {\\\\n        &#039;Content-Type&#039;: &#039;application\\\\\\\/json&#039;,\\\\n      },\\\\n      body: JSON.stringify({ redirectResult: redirectResult }),\\\\n    })\\\\n    .then(response =&amp;gt; response.json())\\\\n    .then(data =&amp;gt; {\\\\n      \\\\\\\/\\\\\\\/ Verify the resultCode from your server&#039;s response.\\\\n      if (data &amp;amp;&amp;amp; data.resultCode === &#039;Authorised&#039;) {\\\\n        console.log(&#039;Payment authorized successfully!&#039;);\\\\n        \\\\\\\/\\\\\\\/ Handle successful payment authorization. For example: show a confirmation message or redirect the shopper to a confirmation page.\\\\n      } else {\\\\n        console.log(&#039;Payment failed or denied.&#039;);\\\\n        \\\\\\\/\\\\\\\/ Handle payment failure. For example: show an error message or redirect the shopper to an error page.\\\\n      }\\\\n    })\\\\n    .catch(error =&amp;gt; {\\\\n      console.error(&#039;Error sending redirect result or processing server response:&#039;, error);\\\\n      \\\\\\\/\\\\\\\/ Handle network errors or issues with server communication.\\\\n    });\\\\n  }\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Call this function when your page loads.\\\\nhandleRedirectResult();&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows the QR code to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper scans the QR code to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;2\\&quot;&gt;\\n&lt;li&gt;The Component shows a different UI in an overlay.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper uses the UI overlay to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows the voucher to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper uses the voucher to pay outside of your website.&lt;\\\/li&gt;\\n&lt;li&gt;You &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows the instructions for the additional action to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper does the additional action.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt; or &lt;code&gt;onError&lt;\\\/code&gt;, depending on the result of the additional action.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; or &lt;code&gt;onError&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;1f40cdb2b4740461769998c17a75f124&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your website, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass additional payment details to your server, depending on the action you handled:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If you handled a redirect: pass the &lt;code&gt;redirectResult&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;If you handled a non-redirect additional action: pass the complete &lt;code&gt;state.data&lt;\\\/code&gt; object from the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request including the &lt;code&gt;redirectResult&lt;\\\/code&gt; or the full &lt;code&gt;state.data&lt;\\\/code&gt; object, depending on the action you handled.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to send additional payment details&#039;\\&quot; :id=\\&quot;&#039;details-request-component&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{hint:object passed from your client app}STATE_DATA{\\\\\\\/hint}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nString xApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nClient client = new Client(xApiKey,Environment.TEST);\\\\nCheckout checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nPaymentsDetailsRequest paymentsDetailsRequest = STATE_DATA;\\\\nPaymentsResponse paymentsDetailsResponse = checkout.paymentsDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\n$params = STATE_DATA;\\\\n$result = $service-&amp;gt;paymentsDetails($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed.\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from the client app, deserialized from JSON to a data structure.\\\\nvar paymentsDetailsRequest = STATE_DATA;\\\\nvar paymentsDetailsResponse = checkout.PaymentDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;[ADYEN_API_KEY]&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\ncheckout.paymentsDetails(STATE_DATA).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;[ADYEN_API_KEY]\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nreq := STATE_DATA;\\\\nres, httpRes, err := client.Checkout.PaymentsDetails(&amp;amp;req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresult = adyen.checkout.payments_details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresponse = adyen.checkout.payments.details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client\\\\n   puts response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode to your client\\\\n   puts response.body[:resultCode]\\\\nend&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response from your server to your client app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;2d79f86287d1ee3a1e7224247cd8e112&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Components to your payments form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Next, use the Component to render the payment method, and collect the required payment details from your shopper. Install the Adyen Web Node package or use a &lt;code&gt;&amp;lt;script&amp;gt;&lt;\\\/code&gt; tag.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabW5BpD17831\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;17831&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;npm (recommended)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Install the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/package\\\\\\\/@adyen\\\\\\\/adyen-web\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Adyen Web Node package&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install @adyen\\\\\\\\\\\\\\\/adyen-web --save\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Import Adyen Web into your application:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;import { AdyenCheckout } from &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web&amp;#039;;\\\\\\\\nimport &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web\\\\\\\\\\\\\\\/styles\\\\\\\\\\\\\\\/adyen.css&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;npm_(recommended)_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Embed script and stylesheet&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Include the following script in the\\\\u00a0&amp;lt;code&amp;gt;&amp;amp;lt;body&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;\\\\u00a0above any other JavaScript in your checkout page:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;We recommend that you also validate the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/web-best-practices#implement-subresource-integrity-hashes\\\\&amp;quot;&amp;gt;Subresource Integrity (SRI) hash&amp;lt;\\\\\\\/a&amp;gt;, which we provide for each version of our JavaScript and CSS files. You can find the SRI hashes in our &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/release-notes\\\\&amp;quot;&amp;gt;release notes&amp;lt;\\\\\\\/a&amp;gt;, under &amp;lt;strong&amp;gt;Updating to this version&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;script src=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.js\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-KF6Y8NQXGnIuzqJn5rcqCe6dMy7gBWobcIKr1BmIaz6pOeBAV0hrHBBMbHC\\\\\\\/inHu\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;&amp;amp;lt;\\\\\\\/script&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute.--&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Use the following CSS file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;link rel=\\\\&amp;quot;stylesheet\\\\&amp;quot; href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.css\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-uwMmo3xJR0e9jI+Oi5kzu43ShY0pXrb3auIlCjLjMNtl0X8Nat55eXNqwj8xU6H9\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute. --&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;embed_script_and_stylesheet_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;&amp;emsp;&amp;emsp;&amp;nbsp;You can &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;add your own styling&lt;\\\/a&gt; by overriding the rules in this CSS file.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a DOM element on your checkout page,\\u00a0placing it where you want the payment method form to be rendered.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create DOM element&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;xml\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;&amp;lt;div id=\\\\\\&quot;component-container\\\\\\&quot;&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;If you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a id=\\&quot;adyencheckout\\&quot;&gt;&lt;\\\/a&gt; Create a &lt;code&gt;configuration&lt;\\\/code&gt; object with the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response returned &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;when you get available payment methods&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;locale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. This is used to set the language rendered in the UI. For a list of supported locales, see\\u00a0&lt;a href=\\&quot;\\\/online-payments\\\/web-components\\\/localization-components\\&quot;&gt;Localization&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/drop-in-web#testing-your-integration\\&quot;&gt;live environments&lt;\\\/a&gt;.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler for this event, which is called when the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button. &lt;br&gt; This applies if the &lt;a href=\\&quot;#configure\\&quot;&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt; configuration parameter&lt;\\\/a&gt; is set to &lt;strong&gt;true&lt;\\\/strong&gt;. &lt;br&gt; In the example below, the handler is named &lt;code&gt;handleOnSubmit&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler for this event, used for native 3D Secure 2, and for native QR code payment methods. In the example below, the handler is named &lt;code&gt;handleOnAdditionalDetails&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; and &lt;code&gt;value&lt;\\\/code&gt; of the transaction.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. This is used to filter the list of available payment methods to your shopper. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;analytics.enabled&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Indicates if you are sending &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking\\&quot;&gt;analytics data&lt;\\\/a&gt; to Adyen. Default: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Configure the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;function handleOnSubmit(state, component) {\\\\n    state.isValid \\\\\\\/\\\\\\\/ True or false. Specifies if all the information that the shopper provided is valid.\\\\n    state.data \\\\\\\/\\\\\\\/ Provides the data that you must include when you make the POST \\\\\\\/payments request.\\\\n    component \\\\\\\/\\\\\\\/ Provides the active instance of the Component that called this event.\\\\n}\\\\n\\\\nfunction handleOnAdditionalDetails(state, component) {\\\\n    state.data \\\\\\\/\\\\\\\/ Provides the data that you must include when you make the POST \\\\\\\/payments\\\\\\\/details request.\\\\n    component \\\\\\\/\\\\\\\/ Provides the active instance of the Component that called this event.\\\\n}\\\\n\\\\nconst configuration = {\\\\n    locale: \\\\&amp;quot;en_US\\\\&amp;quot;, \\\\\\\/\\\\\\\/ The shopper&#039;s locale. For a list of supported locales, see\\\\u00a0https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/web-components\\\\\\\/localization-components.\\\\n    environment: \\\\&amp;quot;test\\\\&amp;quot;, \\\\\\\/\\\\\\\/ When you are ready to accept live payments, change the value to one of our live environments https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/components-web#testing-your-integration.\\\\n    clientKey: \\\\&amp;quot;YOUR_CLIENT_KEY\\\\&amp;quot;, \\\\\\\/\\\\\\\/ Your client key. To find out how to generate one, see\\\\u00a0https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/development-resources\\\\\\\/client-side-authentication. Web Components versions before 3.10.1 use originKey instead of clientKey.\\\\n    analytics: {\\\\n      enabled: true \\\\\\\/\\\\\\\/ Set to false to not send analytics data to Adyen.\\\\n    },\\\\n    paymentMethodsResponse: paymentMethodsResponse, \\\\\\\/\\\\\\\/ The payment methods response returned from the POST \\\\\\\/paymentMethods request.\\\\n    showPayButton: true, \\\\\\\/\\\\\\\/ Set to false if you do not want to use the pre-built Pay button.\\\\n    onSubmit: handleOnSubmit, \\\\\\\/\\\\\\\/ Your function for handling the onSubmit event.\\\\n    amount: {  \\\\\\\/\\\\\\\/ Optional. Shows the amount on the Pay button.\\\\n        value: 1000,\\\\n        currency: &#039;EUR&#039;\\\\n    },\\\\n    onAdditionalDetails: handleOnAdditionalDetails \\\\\\\/\\\\\\\/ Your function for handling the onAdditionalDetails event.\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use the &lt;code&gt;configuration&lt;\\\/code&gt; object to create an instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create an instance of AdyenCheckout&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;const checkout = await AdyenCheckout(configuration);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use the &lt;code&gt;checkout.create&lt;\\\/code&gt; method to create and mount an instance of the payment method Component. &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Some payment method Components require additional configuration. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For example, to mount the Card Component using its component name, &lt;code&gt;card&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Mount the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const card = checkout.create(&#039;card&#039;).mount(&#039;#component-container&#039;);&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;You can also include &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/web-component#component-configuration\\&quot;&gt;optional Card Component configuration&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;When the shopper enters the payment details and selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, the Component calls the &lt;code&gt;onSubmit&lt;\\\/code&gt; event. If &lt;code&gt;state.isValid&lt;\\\/code&gt; is &lt;strong&gt;true&lt;\\\/strong&gt;, use the data in &lt;code&gt;state.data&lt;\\\/code&gt; to make the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;state from onChange event for Card Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    isValid: true,\\\\n    data: {\\\\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    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;7865c045dfb5b8f3f7fc7dd57fded792&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper submits their payment details or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a  &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;state.data.paymentMethod&lt;\\\/code&gt; from the &lt;code&gt;onChange&lt;\\\/code&gt; or &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client website.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;URL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;. You can also include your own additional query parameters, for example, shopper ID or order reference number.  &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;riskData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/risk-management\\\/fraud-data-collection\\&quot;&gt;Device characteristics and other data&lt;\\\/a&gt; that we use to detect fraudulent payment activity, and mitigate fraud.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;checkoutAttemptId&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt; generated by the Component to track the user payment journey.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-web&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n\\\\t    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n\\\\t   \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;checkoutAttemptId\\\\&amp;quot;: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nRiskData riskData = new RiskData()\\\\n  .clientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .checkoutAttemptId(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;)\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  .riskData(riskData);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\RiskData;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$riskData = new RiskData();\\\\n$riskData\\\\n  -&amp;gt;setClientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setCheckoutAttemptId(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  -&amp;gt;setRiskData($riskData);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.2\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nRiskData riskData = new RiskData\\\\n{\\\\n  ClientData = \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  CheckoutAttemptId = \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData = riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: {\\\\n    type: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: {\\\\n    clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  checkoutAttemptId: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\nriskData := checkout.RiskData{\\\\n  ClientData: common.PtrString(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  CheckoutAttemptId: common.PtrString(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData: &amp;amp;riskData,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;checkoutAttemptId\\\\&amp;quot;: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;,\\\\n  :riskData =&amp;gt; {\\\\n    :clientData =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==&#039;\\\\n  },\\\\n  :checkoutAttemptId =&amp;gt; &#039;7m583f18-b533-4fn0...&#039;,\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst riskData: Types.checkout.RiskData = {\\\\n  clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  checkoutAttemptId: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with a redirect action&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?...\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;38309878bb9530debfe411fc18d685bd&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Components to your payments form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Next, use the Component to render the payment method, and collect the required payment details from your shopper. Install the Adyen Web Node package or use a &lt;code&gt;&amp;lt;script&amp;gt;&lt;\\\/code&gt; tag.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tab7dwl859357\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;59357&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;npm (recommended)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Install the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/package\\\\\\\/@adyen\\\\\\\/adyen-web\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Adyen Web Node package&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install @adyen\\\\\\\\\\\\\\\/adyen-web --save\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Import Adyen Web into your application:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;import { AdyenCheckout } from &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web&amp;#039;;\\\\\\\\nimport &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web\\\\\\\\\\\\\\\/styles\\\\\\\\\\\\\\\/adyen.css&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;npm_(recommended)_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Embed script and stylesheet&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Include the following script in the\\\\u00a0&amp;lt;code&amp;gt;&amp;amp;lt;body&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;\\\\u00a0above any other JavaScript in your checkout page:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;We recommend that you also validate the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/web-best-practices#implement-subresource-integrity-hashes\\\\&amp;quot;&amp;gt;Subresource Integrity (SRI) hash&amp;lt;\\\\\\\/a&amp;gt;, which we provide for each version of our JavaScript and CSS files. You can find the SRI hashes in our &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/release-notes\\\\&amp;quot;&amp;gt;release notes&amp;lt;\\\\\\\/a&amp;gt;, under &amp;lt;strong&amp;gt;Updating to this version&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;script src=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.js\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-KF6Y8NQXGnIuzqJn5rcqCe6dMy7gBWobcIKr1BmIaz6pOeBAV0hrHBBMbHC\\\\\\\/inHu\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;&amp;amp;lt;\\\\\\\/script&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute.--&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Use the following CSS file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-html\\\\&amp;quot;&amp;gt;&amp;amp;lt;link rel=\\\\&amp;quot;stylesheet\\\\&amp;quot; href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/sdk\\\\\\\/{VERSION}\\\\\\\/adyen.css\\\\&amp;quot;\\\\nintegrity=\\\\&amp;quot;sha384-uwMmo3xJR0e9jI+Oi5kzu43ShY0pXrb3auIlCjLjMNtl0X8Nat55eXNqwj8xU6H9\\\\&amp;quot;\\\\ncrossorigin=\\\\&amp;quot;anonymous\\\\&amp;quot;&amp;amp;gt;\\\\n&amp;amp;lt;!-- Adyen provides the SRI hash that you include as the integrity attribute. --&amp;amp;gt;\\\\n&amp;amp;lt;!-- Refer to our release notes to get the SRI hash for the specific version: https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/release-notes --&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;embed_script_and_stylesheet_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;&amp;emsp;&amp;emsp;&amp;nbsp;You can &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;add your own styling&lt;\\\/a&gt; by overriding the rules in this CSS file.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a DOM element on your checkout page,\\u00a0placing it where you want the payment method form to be rendered.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create DOM element&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;xml\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;&amp;lt;div id=\\\\\\&quot;component-container\\\\\\&quot;&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;If you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a id=\\&quot;adyencheckout\\&quot;&gt;&lt;\\\/a&gt; Create a &lt;code&gt;configuration&lt;\\\/code&gt; object with the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response returned &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;when you get available payment methods&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;locale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. This is used to set the language rendered in the UI. For a list of supported locales, see\\u00a0&lt;a href=\\&quot;\\\/online-payments\\\/web-components\\\/localization-components\\&quot;&gt;Localization&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/drop-in-web#testing-your-integration\\&quot;&gt;live environments&lt;\\\/a&gt;.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler for this event, which is called when the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button. &lt;br&gt; This applies if the &lt;a href=\\&quot;#configure\\&quot;&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt; configuration parameter&lt;\\\/a&gt; is set to &lt;strong&gt;true&lt;\\\/strong&gt;. &lt;br&gt; In the example below, the handler is named &lt;code&gt;handleOnSubmit&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler for this event, used for native 3D Secure 2, and for native QR code payment methods. In the example below, the handler is named &lt;code&gt;handleOnAdditionalDetails&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; and &lt;code&gt;value&lt;\\\/code&gt; of the transaction.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. This is used to filter the list of available payment methods to your shopper. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;analytics.enabled&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Indicates if you are sending &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking\\&quot;&gt;analytics data&lt;\\\/a&gt; to Adyen. Default: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Configure the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;function handleOnSubmit(state, component) {\\\\n    state.isValid \\\\\\\/\\\\\\\/ True or false. Specifies if all the information that the shopper provided is valid.\\\\n    state.data \\\\\\\/\\\\\\\/ Provides the data that you must include when you make the POST \\\\\\\/payments request.\\\\n    component \\\\\\\/\\\\\\\/ Provides the active instance of the Component that called this event.\\\\n}\\\\n\\\\nfunction handleOnAdditionalDetails(state, component) {\\\\n    state.data \\\\\\\/\\\\\\\/ Provides the data that you must include when you make the POST \\\\\\\/payments\\\\\\\/details request.\\\\n    component \\\\\\\/\\\\\\\/ Provides the active instance of the Component that called this event.\\\\n}\\\\n\\\\nconst configuration = {\\\\n    locale: \\\\&amp;quot;en_US\\\\&amp;quot;, \\\\\\\/\\\\\\\/ The shopper&#039;s locale. For a list of supported locales, see\\\\u00a0https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/web-components\\\\\\\/localization-components.\\\\n    environment: \\\\&amp;quot;test\\\\&amp;quot;, \\\\\\\/\\\\\\\/ When you are ready to accept live payments, change the value to one of our live environments https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/online-payments\\\\\\\/components-web#testing-your-integration.\\\\n    clientKey: \\\\&amp;quot;YOUR_CLIENT_KEY\\\\&amp;quot;, \\\\\\\/\\\\\\\/ Your client key. To find out how to generate one, see\\\\u00a0https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/development-resources\\\\\\\/client-side-authentication. Web Components versions before 3.10.1 use originKey instead of clientKey.\\\\n    analytics: {\\\\n      enabled: true \\\\\\\/\\\\\\\/ Set to false to not send analytics data to Adyen.\\\\n    },\\\\n    paymentMethodsResponse: paymentMethodsResponse, \\\\\\\/\\\\\\\/ The payment methods response returned from the POST \\\\\\\/paymentMethods request.\\\\n    showPayButton: true, \\\\\\\/\\\\\\\/ Set to false if you do not want to use the pre-built Pay button.\\\\n    onSubmit: handleOnSubmit, \\\\\\\/\\\\\\\/ Your function for handling the onSubmit event.\\\\n    amount: {  \\\\\\\/\\\\\\\/ Optional. Shows the amount on the Pay button.\\\\n        value: 1000,\\\\n        currency: &#039;EUR&#039;\\\\n    },\\\\n    onAdditionalDetails: handleOnAdditionalDetails \\\\\\\/\\\\\\\/ Your function for handling the onAdditionalDetails event.\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use the &lt;code&gt;configuration&lt;\\\/code&gt; object to create an instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create an instance of AdyenCheckout&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;const checkout = await AdyenCheckout(configuration);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use the &lt;code&gt;checkout.create&lt;\\\/code&gt; method to create and mount an instance of the payment method Component. &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Some payment method Components require additional configuration. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For example, to mount the Card Component using its component name, &lt;code&gt;card&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Mount the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const card = checkout.create(&#039;card&#039;).mount(&#039;#component-container&#039;);&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;You can also include &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/web-component#component-configuration\\&quot;&gt;optional Card Component configuration&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;When the shopper enters the payment details and selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, the Component calls the &lt;code&gt;onSubmit&lt;\\\/code&gt; event. If &lt;code&gt;state.isValid&lt;\\\/code&gt; is &lt;strong&gt;true&lt;\\\/strong&gt;, use the data in &lt;code&gt;state.data&lt;\\\/code&gt; to make the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;state from onChange event for Card Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    isValid: true,\\\\n    data: {\\\\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    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;ac14b9c3e689fef15851c6648ce599d0&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;Configuring Components&lt;\\\/h3&gt;\\n&lt;p&gt;You can include the following additional configuration when instantiating Components on your payments form:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;sc-notice info\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;You can also override the values that you set here by specifying these parameters for individual payment methods at the Component level.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/div&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Configuration object&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Set to &lt;strong&gt;true&lt;\\\/strong&gt; to use our pre-built &lt;strong&gt;Pay&lt;\\\/strong&gt; button for each payment method. The &lt;strong&gt;Pay&lt;\\\/strong&gt; button triggers the &lt;code&gt;onSubmit&lt;\\\/code&gt; event. &lt;br&gt; &lt;p&gt;&lt;\\\/p&gt; If you want to use your own button and then trigger the submit flow on your own, set this to &lt;strong&gt;false&lt;\\\/strong&gt; and call the &lt;code&gt;.submit()&lt;\\\/code&gt; method from your own button implementation. For example, &lt;code&gt;component.submit()&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Amount to be displayed on the &lt;strong&gt;Pay&lt;\\\/strong&gt; Button. It expects an object with the value and currency properties. For example, &lt;code&gt;{ value: 1000, currency: &#039;USD&#039; }&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;setStatusAutomatically&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Set to &lt;strong&gt;false&lt;\\\/strong&gt; to not set the Component status to &lt;code&gt;&#039;loading&#039;&lt;\\\/code&gt; when &lt;code&gt;onSubmit&lt;\\\/code&gt; is triggered. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;redirectFromTopWhenInIframe&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If your Component is inside of an &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/HTML\\\/Element\\\/iframe\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;iframe element&lt;\\\/a&gt;, set to &lt;strong&gt;true&lt;\\\/strong&gt; if you want redirects to be performed on the top-level window. &lt;br&gt; We recommend that you do not put Component in an iframe.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;d6dbac1b8733378f7532e16677fc1d00&quot;:&quot;&lt;p&gt;Components is our pre-built UI solution for accepting payments on your website. Each component renders a payment method which you can place anywhere on your website. This integration requires you to make API requests to  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt;,  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt;, and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; endpoints.&lt;\\\/p&gt;\\n&lt;p&gt;Adding new payment methods usually doesn&#039;t require more development work. Components supports &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/web-drop-in\\&quot;&gt;cards&lt;\\\/a&gt;, &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;wallets&lt;\\\/a&gt;, and &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;most local payment methods&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&quot;,&quot;5fbf4494f5595ba3fdb3a373d941543c&quot;:&quot;&lt;h2&gt;Introducing Web v6&lt;\\\/h2&gt;\\n&lt;h3&gt;Improvements&lt;\\\/h3&gt;\\n&lt;p&gt;The Web v6 library introduces the following improvements:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Reduced bundle size through tree shaking&lt;\\\/li&gt;\\n&lt;li&gt;Enhanced design&lt;\\\/li&gt;\\n&lt;li&gt;Enhanced Typescript developer experience&lt;\\\/li&gt;\\n&lt;li&gt;Better alignment of express payment methods&lt;\\\/li&gt;\\n&lt;li&gt;Added support for 6 localizations&lt;\\\/li&gt;\\n&lt;li&gt;Support for Apple Pay Order tracking&lt;\\\/li&gt;\\n&lt;li&gt;Improve AVS checks for Google Pay and Apple Pay&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;To upgrade your existing integration, see &lt;a href=\\&quot;\\\/online-payments\\\/upgrade-your-integration\\\/upgrade-to-web-v6\\&quot;&gt;Upgrade to Adyen Web v6&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;17bcfc32021951f01c63ed73fbba7017&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Components to your payments form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Next, use the Component to render the payment method, and collect the required payment details from your shopper.&lt;\\\/p&gt;\\n&lt;p&gt;Import using the Adyen Web npm package, or embed the Adyen Web script and stylesheet into your HTML file:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tab3BA6w88784\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;88784&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;npm (recommended)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Install the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/package\\\\\\\/@adyen\\\\\\\/adyen-web\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Adyen Web Node package&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install @adyen\\\\\\\\\\\\\\\/adyen-web --save\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Import Adyen Web into your application.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;import { AdyenCheckout, Card } from &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web&amp;#039;;\\\\\\\\nimport &amp;#039;@adyen\\\\\\\\\\\\\\\/adyen-web\\\\\\\\\\\\\\\/styles\\\\\\\\\\\\\\\/adyen.css&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;npm&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;npm_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;npm&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Embed script and stylesheet&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Use the &amp;lt;code&amp;gt;integrity&amp;lt;\\\\\\\/code&amp;gt; attribute so browsers can verify that the script and stylesheet have not been changed unexpectedly.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;The value of the &amp;lt;code&amp;gt;integrity&amp;lt;\\\\\\\/code&amp;gt; attribute is the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/web-best-practices#implement-subresource-integrity-hashes\\\\&amp;quot;&amp;gt;Subresource Integrity (SRI) hash&amp;lt;\\\\\\\/a&amp;gt; which Adyen provides for each version of the Adyen Web JavaScript and CSS files.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Get the SRI hashes in the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/release-notes?integration_type=web\\\\&amp;quot;&amp;gt;release notes&amp;lt;\\\\\\\/a&amp;gt;, under &amp;lt;strong&amp;gt;Updating to this version&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;checkout.html&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;html\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;lt;!-- Embed the Adyen Web script element above any other JavaScript in your checkout page. --&amp;gt;\\\\\\\\n&amp;amp;lt;script src=\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkoutshopper-test.cdn.adyen.com\\\\\\\\\\\\\\\/sdk\\\\\\\\\\\\\\\/VERSION\\\\\\\\\\\\\\\/adyen.js\\\\\\\\\\\\&amp;quot;\\\\\\\\n   integrity=\\\\\\\\\\\\&amp;quot;JS_INTEGRITY_HASH_FOR_YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\\\\\n   crossorigin=\\\\\\\\\\\\&amp;quot;anonymous\\\\\\\\\\\\&amp;quot;&amp;amp;gt;&amp;amp;lt;\\\\\\\\\\\\\\\/script&amp;amp;gt;\\\\\\\\n\\\\\\\\n&amp;lt;!-- Embed the Adyen Web stylesheet. You can add your own styling by overriding the rules in the CSS file --&amp;gt;\\\\\\\\n&amp;amp;lt;link rel=\\\\\\\\\\\\&amp;quot;stylesheet\\\\\\\\\\\\&amp;quot; href=\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkoutshopper-test.cdn.adyen.com\\\\\\\\\\\\\\\/checkoutshopper\\\\\\\\\\\\\\\/sdk\\\\\\\\\\\\\\\/VERSION\\\\\\\\\\\\\\\/adyen.css\\\\\\\\\\\\&amp;quot;\\\\\\\\n    integrity=\\\\\\\\\\\\&amp;quot;CSS_INTEGRITY_HASH_FOR_YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\\\\\n    crossorigin=\\\\\\\\\\\\&amp;quot;anonymous\\\\\\\\\\\\&amp;quot;&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;script&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;embed_script_and_stylesheet_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;script&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;&amp;emsp;&amp;emsp;&amp;nbsp;You can &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=Web&amp;amp;integration=Drop-in#optional-configuration\\&quot;&gt;add your own styling&lt;\\\/a&gt; by overriding the rules in this CSS file.&lt;\\\/p&gt;\\n&lt;p&gt;After you have imported the Adyen Web library, do the following:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a DOM element on your checkout page,\\u00a0placing it where you want the payment method form to be rendered.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;html\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;&amp;lt;div id=\\\\\\&quot;component-container\\\\\\&quot;&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;If you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a id=\\&quot;adyencheckout\\&quot;&gt;&lt;\\\/a&gt; Create a &lt;code&gt;configuration&lt;\\\/code&gt; object with the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response returned &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;when you get available payment methods&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;locale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. This is used to set the language rendered in the UI. For a list of supported locales, see\\u00a0&lt;a href=\\&quot;\\\/online-payments\\\/web-components\\\/localization-components\\&quot;&gt;Localization&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. This is used to filter the list of available payment methods to your shopper. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/drop-in-web#testing-your-integration\\&quot;&gt;live environments&lt;\\\/a&gt;.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit(state, component, actions)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler for this event, which is called when the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, and the details are valid. This applies if the &lt;a href=\\&quot;#configure\\&quot;&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt; configuration parameter&lt;\\\/a&gt; is set to &lt;strong&gt;true&lt;\\\/strong&gt;. &lt;br&gt; Makes a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request. &lt;br&gt;  You must call &lt;code&gt;actions.resolve()&lt;\\\/code&gt;, passing &lt;code&gt;resultCode&lt;\\\/code&gt;, &lt;code&gt;action&lt;\\\/code&gt;, and &lt;code&gt;order&lt;\\\/code&gt; objects (if available) from the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, even when the payment is unsuccessful. &lt;br&gt; If the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request from your server fails, or if an unexpected error occurs, call &lt;code&gt;actions.reject()&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails(state, component, actions)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler for this event, used for native 3D Secure 2, and for native QR code payment methods. In the example below, the handler is named &lt;code&gt;handleOnAdditionalDetails&lt;\\\/code&gt;. Makes a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onPaymentCompleted(result, component)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the payment is completed.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onPaymentFailed(result, component)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the payment failed. A failed payment has result code &lt;strong&gt;Cancelled&lt;\\\/strong&gt;, &lt;strong&gt;Error&lt;\\\/strong&gt; or &lt;strong&gt;Refused&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onError(error)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when an error occurs in the Component.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onChange(state, component)&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when the shopper provides the required payment details.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;secondaryAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Shows the payment amount in an additional currency on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button. You must do the currency conversion and set the amount. &lt;br&gt; This object has properties: &lt;ul&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The amount of the transaction, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currencyDisplay&lt;\\\/code&gt;: Sets the &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/JavaScript\\\/Reference\\\/Global_Objects\\\/Intl\\\/NumberFormat\\\/NumberFormat#currencydisplay\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;currency formatting&lt;\\\/a&gt;. Default: &lt;strong&gt;symbol&lt;\\\/strong&gt;.&lt;\\\/li&gt; &lt;ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPayButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Shows or hides a &lt;strong&gt;Pay&lt;\\\/strong&gt; Button for each payment method. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;. &lt;br&gt; When set to &lt;strong&gt;false&lt;\\\/strong&gt;, you must override it in &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/?platform=Web&amp;amp;integration=Drop-in#configure\\&quot;&gt;\\n  &lt;code&gt;paymentMethodsConfiguration&lt;\\\/code&gt;\\n&lt;\\\/a&gt;. &lt;br&gt; The &lt;strong&gt;Pay&lt;\\\/strong&gt; button triggers the &lt;code&gt;onSubmit&lt;\\\/code&gt; event when payment details are valid. If you want to disable the button and then trigger the submit flow on your own, set this to &lt;strong&gt;false&lt;\\\/strong&gt; and call the &lt;code&gt;.submit()&lt;\\\/code&gt; method from your own button implementation. &lt;br&gt; PayPal Smart Payment Buttons doesn&#039;t support the &lt;code&gt;.submit()&lt;\\\/code&gt; method.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; and &lt;code&gt;value&lt;\\\/code&gt; of the transaction.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a id=\\&quot;on-action-handled\\&quot;&gt;&lt;\\\/a&gt;&lt;code&gt;onActionHandled&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Create an event handler, called when an action, for example a QR code or 3D Secure 2 authentication screen, is shown to the shopper. The following &lt;code&gt;action.type&lt;\\\/code&gt; values trigger this callback: &lt;ul&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;threeDS&lt;\\\/code&gt;&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;qr&lt;\\\/code&gt;&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;await&lt;\\\/code&gt;&lt;\\\/li&gt; &lt;\\\/ul&gt; Returns data that contains: &lt;ul&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;componentType&lt;\\\/code&gt;: The type of component that shows the action to the shopper.&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;actionDescription&lt;\\\/code&gt;: A description of the action shown to the shopper.&lt;\\\/li&gt; &lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Configure the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const configuration = {\\\\n  clientKey: \\\\&amp;quot;YOUR_CLIENT_KEY\\\\&amp;quot;,\\\\n  environment: \\\\&amp;quot;test\\\\&amp;quot;,\\\\n  amount: {\\\\n    value: 1000,\\\\n    currency: &#039;EUR&#039;\\\\n  },\\\\n  locale: &#039;nl-NL&#039;\\\\n  countryCode: &#039;NL&#039;\\\\n  \\\\\\\/\\\\\\\/ The full \\\\\\\/paymentMethods response object from your server. Contains the payment methods configured in your account.\\\\n  paymentMethodsResponse: paymentMethodsResponse,\\\\n  onSubmit: async (state, component, actions) =&amp;gt; {\\\\n    try {\\\\n\\\\n      \\\\\\\/\\\\\\\/ Make a POST \\\\\\\/payments request from your server.\\\\n      const result = await makePaymentsCall(state.data, countryCode, locale, amount);\\\\n\\\\n      \\\\\\\/\\\\\\\/ If the \\\\\\\/payments request from your server fails, or if an unexpected error occurs.\\\\n      if (!result.resultCode) {\\\\n        actions.reject();\\\\n        return;\\\\n      }\\\\n\\\\n      const {\\\\n        resultCode,\\\\n        action,\\\\n        order,\\\\n        donationToken\\\\n      } = result;\\\\n\\\\n      \\\\\\\/\\\\\\\/ If the \\\\\\\/payments request request from your server is successful, you must call this to resolve whichever of the listed objects are available.\\\\n      \\\\\\\/\\\\\\\/ You must call this, even if the result of the payment is unsuccessful.\\\\n      actions.resolve({\\\\n        resultCode,\\\\n        action,\\\\n        order,\\\\n        donationToken,\\\\n      });\\\\n    } catch (error) {\\\\n      console.error(\\\\&amp;quot;onSubmit\\\\&amp;quot;, error);\\\\n      actions.reject();\\\\n    }\\\\n  },\\\\n  onAdditionalDetails: async (state, component, actions) =&amp;gt; {\\\\n    try {\\\\n\\\\n      \\\\\\\/\\\\\\\/ Make a POST \\\\\\\/payments\\\\\\\/details request from your server.\\\\n      const result = await makeDetailsCall(state.data);\\\\n\\\\n      \\\\\\\/\\\\\\\/ If the \\\\\\\/payments\\\\\\\/details request from your server fails, or if an unexpected error occurs.\\\\n      if (!result.resultCode) {\\\\n        actions.reject();\\\\n        return;\\\\n      }\\\\n\\\\n      const {\\\\n        resultCode,\\\\n        action,\\\\n        order,\\\\n        donationToken\\\\n      } = result;\\\\n\\\\n      \\\\\\\/\\\\\\\/ If the \\\\\\\/payments\\\\\\\/details request request form your server is successful, you must call this to resolve whichever of the listed objects are available.\\\\n      \\\\\\\/\\\\\\\/ You must call this, even if the result of the payment is unsuccessful.\\\\n      actions.resolve({\\\\n        resultCode,\\\\n        action,\\\\n        order,\\\\n        donationToken,\\\\n      });\\\\n    } catch (error) {\\\\n      console.error(\\\\&amp;quot;onSubmit\\\\&amp;quot;, error);\\\\n      actions.reject();\\\\n    }\\\\n  },\\\\n  onPaymentCompleted: (result, component) =&amp;gt; {\\\\n    console.info(result, component);\\\\n  },\\\\n  onPaymentFailed: (result, component) =&amp;gt; {\\\\n    console.info(result, component);\\\\n  },\\\\n  onError: (error, component) =&amp;gt; {\\\\n    console.error(error.name, error.message, error.stack, component);\\\\n  }\\\\n);&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use the &lt;code&gt;configuration&lt;\\\/code&gt; object to create an instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create an instance of AdyenCheckout&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;const checkout = await AdyenCheckout(configuration);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create and mount an instance of the payment method Component. &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Some payment method Components require additional configuration. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For example, to mount the Card Component using its component name, &lt;code&gt;card&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Mount the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const card = new Card(checkout).mount(&#039;#component-container&#039;);&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;You can also include &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/web-component#component-configuration\\&quot;&gt;optional Card Component configuration&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;When the shopper enters the payment details and selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, the Component calls the &lt;code&gt;onSubmit&lt;\\\/code&gt; event. If &lt;code&gt;state.isValid&lt;\\\/code&gt; is &lt;strong&gt;true&lt;\\\/strong&gt;, use the data in &lt;code&gt;state.data&lt;\\\/code&gt; to make the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;state from onChange event for Card Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    isValid: true,\\\\n    data: {\\\\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    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;90f405e6d5b1803aca74cab387d2ce1f&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;state.data.paymentMethod&lt;\\\/code&gt; from the &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client website.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;URL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;. You can also include your own additional query parameters, for example, shopper ID or order reference number.   &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;riskData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/risk-management\\\/fraud-data-collection\\&quot;&gt;Device characteristics and other data&lt;\\\/a&gt; that we use to detect fraudulent payment activity, and mitigate fraud.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;checkoutAttemptId&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt; generated by the Component to track the user payment journey. This is required for &lt;a href=\\&quot;\\\/uplift#uplift-personalize\\&quot;&gt;Adyen Uplift&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperEmail&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s email address. Strongly recommended because this field is used in a number of &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;risk checks&lt;\\\/a&gt;, and for 3D Secure.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperIP&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s IP address. Strongly recommended because this field is used in a number of &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;risk checks&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperReference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your reference to uniquely identify this shopper. Minimum length: three characters. Do not include personally identifiable information, for example name or email address. Strongly recommended because this field is used in a number of &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;risk checks&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.&lt;\\\/li&gt;\\n&lt;li&gt;Using &lt;a href=\\&quot;\\\/uplift#uplift-personalize\\&quot;&gt;the Adyen Uplift Personalize module&lt;\\\/a&gt; and accessing the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt;.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-web&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n\\\\t    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n\\\\t   \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;checkoutAttemptId\\\\&amp;quot;: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nRiskData riskData = new RiskData()\\\\n  .clientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .checkoutAttemptId(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;)\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  .riskData(riskData);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\RiskData;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$riskData = new RiskData();\\\\n$riskData\\\\n  -&amp;gt;setClientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setCheckoutAttemptId(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  -&amp;gt;setRiskData($riskData);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.2\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nRiskData riskData = new RiskData\\\\n{\\\\n  ClientData = \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  CheckoutAttemptId = \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData = riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: {\\\\n    type: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: {\\\\n    clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  checkoutAttemptId: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\nriskData := checkout.RiskData{\\\\n  ClientData: common.PtrString(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  CheckoutAttemptId: common.PtrString(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData: &amp;amp;riskData,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;checkoutAttemptId\\\\&amp;quot;: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;,\\\\n  :riskData =&amp;gt; {\\\\n    :clientData =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==&#039;\\\\n  },\\\\n  :checkoutAttemptId =&amp;gt; &#039;7m583f18-b533-4fn0...&#039;,\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst riskData: Types.checkout.RiskData = {\\\\n  clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  checkoutAttemptId: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;9af3e0da73ee0ed89cf8827bf41f0165&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;To handle the additional action:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Pass the &lt;code&gt;action&lt;\\\/code&gt; object from your server to the &lt;code&gt;onSubmit&lt;\\\/code&gt; &lt;code&gt;actions.resolve()&lt;\\\/code&gt; function.&lt;\\\/li&gt;\\n&lt;li&gt;The Component performs the additional action on the client side.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;You handle the payment data, depending on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;).&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, the Component redirects your shopper to another website to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper finishes their payment on the other website, they are returned to your &lt;code&gt;returnUrl&lt;\\\/code&gt; with an HTTP GET request. The &lt;code&gt;returnUrl&lt;\\\/code&gt; is appended with a Base64-encoded &lt;code&gt;redirectResult&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example return URL&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;raw\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;GET \\\\\\\/?shopperOrder=12xy..&amp;amp;&amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\/1.1\\\\nHost: www.your-company.example.com\\\\\\\/checkout\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;If the shopper fails to return to your website, you do not get the &lt;code&gt;redirectResult&lt;\\\/code&gt;. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;To process the result:&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;2\\&quot;&gt;\\n&lt;li&gt;Get the &lt;code&gt;redirectResult&lt;\\\/code&gt; appended to your return URL. You do not need to decode it.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;redirectResult&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example JavaScript code snippet to handle redirectResult&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;function handleRedirectResult() {\\\\n\\\\n  \\\\\\\/\\\\\\\/ 1. Get the redirectResult from your return URL.\\\\n  const urlParams = new URLSearchParams(window.location.search);\\\\n  const redirectResult = urlParams.get(&#039;redirectResult&#039;);\\\\n\\\\n  if (redirectResult) {\\\\n    \\\\\\\/\\\\\\\/ 2. Pass the redirectResult to your server.\\\\n    \\\\\\\/\\\\\\\/ 3. Your server makes the \\\\\\\/payments\\\\\\\/details request. Adyen&#039;s server processes the encoded redirectResult value.\\\\n    fetch(&#039;\\\\\\\/api\\\\\\\/handle-payment-redirect&#039;, {\\\\n      method: &#039;POST&#039;,\\\\n      headers: {\\\\n        &#039;Content-Type&#039;: &#039;application\\\\\\\/json&#039;,\\\\n      },\\\\n      body: JSON.stringify({ redirectResult: redirectResult }),\\\\n    })\\\\n    .then(response =&amp;gt; response.json())\\\\n    .then(data =&amp;gt; {\\\\n      \\\\\\\/\\\\\\\/ Verify the resultCode from your server&#039;s response.\\\\n      if (data &amp;amp;&amp;amp; data.resultCode === &#039;Authorised&#039;) {\\\\n        console.log(&#039;Payment authorized successfully!&#039;);\\\\n        \\\\\\\/\\\\\\\/ Handle successful payment authorization. For example: show a confirmation message or redirect the shopper to a confirmation page.\\\\n      } else {\\\\n        console.log(&#039;Payment failed or denied.&#039;);\\\\n        \\\\\\\/\\\\\\\/ Handle payment failure. For example: show an error message or redirect the shopper to an error page.\\\\n      }\\\\n    })\\\\n    .catch(error =&amp;gt; {\\\\n      console.error(&#039;Error sending redirect result or processing server response:&#039;, error);\\\\n      \\\\\\\/\\\\\\\/ Handle network errors or issues with server communication.\\\\n    });\\\\n  }\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Call this function when your page loads.\\\\nhandleRedirectResult();&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows the QR code to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper scans the QR code to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;2\\&quot;&gt;\\n&lt;li&gt;The Component shows a different UI in an overlay.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper uses the UI overlay to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows the voucher to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper uses the voucher to pay outside of your website.&lt;\\\/li&gt;\\n&lt;li&gt;You &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows the instructions for the additional action to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper does the additional action.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls &lt;code&gt;onAddtionalDetails&lt;\\\/code&gt; or &lt;code&gt;onError&lt;\\\/code&gt;, depending on the result of the additional action.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;state.data&lt;\\\/code&gt; from &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; or &lt;code&gt;onError&lt;\\\/code&gt; to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to complete the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;3a5072190e2741c93142964d69923476&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After the Component finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes\\&quot;&gt;&lt;code&gt;resultCode&lt;\\\/code&gt;&lt;\\\/a&gt; from the &lt;code&gt;onPaymentCompleted&lt;\\\/code&gt; or &lt;code&gt;onPaymentFailed&lt;\\\/code&gt; event to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;h2 id=\\&quot;error-handling\\&quot;&gt;Error handling&lt;\\\/h2&gt;\\n&lt;p&gt;In case you encounter errors in your integration, refer to the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/error-codes\\&quot;&gt;API error codes&lt;\\\/a&gt;: If you receive a non-HTTP 200 response, use the &lt;code&gt;errorCode&lt;\\\/code&gt; to troubleshoot and modify your request.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/refusal-reasons\\&quot;&gt;Payment refusals&lt;\\\/a&gt;: If you receive an HTTP 200 response with an &lt;strong&gt;Error&lt;\\\/strong&gt; or &lt;strong&gt;Refused&lt;\\\/strong&gt; &lt;code&gt;resultCode&lt;\\\/code&gt;, check the refusal reason and, if possible, modify your request.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h2 id=\\&quot;testing-your-integration\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. Review the process to start accepting payments on &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?=1#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.\\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Load Components from one of our live environments and set the &lt;code&gt;environment&lt;\\\/code&gt; to match your live endpoints:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;Value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe (EU) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;United States (US) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-us&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia (AU) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-au&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Asia Pacific &amp;amp; Southeast (APSE) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-apse&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;India (IN) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-in&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;7cfcaf1877c6e5c200241d37bdb1febb&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The complete &lt;code&gt;state.data.paymentMethod&lt;\\\/code&gt; object from the &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client app. It includes the payment method details and other required information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The object that includes information collected by the Component to track the user&#039;s payment journey, including information like the &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt;. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;URL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;. You can also include your own additional query parameters, for example, shopper ID or order reference number.   &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;riskData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/risk-management\\\/fraud-data-collection\\&quot;&gt;Device characteristics and other data&lt;\\\/a&gt; that we use to detect fraudulent payment activity, and mitigate fraud.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperEmail&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s email address. Strongly recommended because this field is used in a number of &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;risk checks&lt;\\\/a&gt;, and for 3D Secure.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperIP&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s IP address. Strongly recommended because this field is used in a number of &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;risk checks&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperReference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your reference to uniquely identify this shopper. Minimum length: three characters. Do not include personally identifiable information, for example name or email address. Strongly recommended because this field is used in a number of &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;risk checks&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.&lt;\\\/li&gt;\\n&lt;li&gt;Using &lt;a href=\\&quot;\\\/uplift#uplift-personalize\\&quot;&gt;the Adyen Uplift Personalize module&lt;\\\/a&gt; and accessing the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt;.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-web&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n\\\\t    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n\\\\t    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n\\\\t   \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n\\\\t},\\\\n  \\\\&amp;quot;checkoutAttemptId\\\\&amp;quot;: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nRiskData riskData = new RiskData()\\\\n  .clientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .checkoutAttemptId(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;)\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  .riskData(riskData);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\RiskData;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$riskData = new RiskData();\\\\n$riskData\\\\n  -&amp;gt;setClientData(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setCheckoutAttemptId(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;)\\\\n  -&amp;gt;setRiskData($riskData);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.2\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nRiskData riskData = new RiskData\\\\n{\\\\n  ClientData = \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  CheckoutAttemptId = \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData = riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: {\\\\n    type: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: {\\\\n    clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  checkoutAttemptId: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\nriskData := checkout.RiskData{\\\\n  ClientData: common.PtrString(\\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  CheckoutAttemptId: common.PtrString(\\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  RiskData: &amp;amp;riskData,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  \\\\&amp;quot;riskData\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;clientData\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;checkoutAttemptId\\\\&amp;quot;: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;,\\\\n  :riskData =&amp;gt; {\\\\n    :clientData =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==&#039;\\\\n  },\\\\n  :checkoutAttemptId =&amp;gt; &#039;7m583f18-b533-4fn0...&#039;,\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.1.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst riskData: Types.checkout.RiskData = {\\\\n  clientData: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cy...I6IlkifQ==\\\\&amp;quot;\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  checkoutAttemptId: \\\\&amp;quot;7m583f18-b533-4fn0...\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n  riskData: riskData\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;d5c2f03e2c7d8cb12308b97df6ae76ff&quot;:&quot;&lt;h3 id=\\&quot;update-amount\\&quot;&gt;Optional: Update the payment amount&lt;\\\/h3&gt;\\n&lt;p&gt;If the amount changes after you mount the Component (for example: the shopper adds or removes items from their cart), you can update the payment amount without re-initializing &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;From your instance of &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;, call the &lt;code&gt;update&lt;\\\/code&gt; method, passing the new amount.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Update the payment amount&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Create an amount object with the updated amount.\\\\nconst amount = { value: 2000, currency: &#039;EUR&#039; };\\\\n\\\\\\\/\\\\\\\/ Update the amount in the checkout instance.\\\\ncheckout.update(amount);&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;}},&quot;api&quot;:{&quot;label&quot;:&quot;API only&quot;,&quot;description&quot;:&quot;Use Adyen APIs and your own UI&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;API only&lt;\\\/h2&gt;\\n&lt;p&gt;Create your own client-side UI and use our API endpoints to get the list of available payment methods and submit a payment.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=api%20only\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Full control of styling on your checkout page&lt;\\\/li&gt;\\n&lt;li&gt;Your own UI elements&lt;\\\/li&gt;\\n&lt;li&gt;Creating your own client-side logic&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Handling secure card data and authentication&lt;\\\/h3&gt;\\n&lt;p&gt;You must ensure that your integration complies with regulatory requirements such as &lt;a href=\\&quot;\\\/online-payments\\\/pci-dss-compliance\\&quot;&gt;PCI DSS&lt;\\\/a&gt; and &lt;a href=\\&quot;\\\/online-payments\\\/psd2-sca-compliance-and-implementation-guide\\&quot;&gt;PSD2 SCA&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;We recommend that you use our pre-built client-side solutions to securely do the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;Collect, validate, and encrypt card details&lt;\\\/strong&gt;: Implement our solution to &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/custom-card-integration\\&quot;&gt;handle encrypted card data&lt;\\\/a&gt; with your custom UI and comply with &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4\\&quot;&gt;PCI DSS regulations&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Authenticate transactions with 3D Secure 2&lt;\\\/strong&gt;: Handle the &lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt; using our solution and comply with &lt;a href=\\&quot;\\\/online-payments\\\/psd2-sca-compliance-and-implementation-guide\\\/sca-options\\&quot;&gt;PSD2 SCA regulations for online payments&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;visual_images&quot;:null,&quot;external_content&quot;:null,&quot;external_icon&quot;:null,&quot;versions&quot;:{&quot;version-72&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;f0466956e11aa80ed97962b8f56d02b8&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;07d2ecb5ed3e5b4ce941e6fc8d8e41fe&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;4f1a5f263d2411cc91b967e17559b66f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;8f73244559657311010bcfd0a3711a82&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;72&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-71&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;870349294bcfb296564ec9737d0cc5aa&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c60029ff5916117a06695ddc18cb292e&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;4f1a5f263d2411cc91b967e17559b66f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;786c1dafef7066cbc356a23eb0c207ef&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;71&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-70&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b174e01ee8db2d61b498336fc129620b&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;68dfb3ae27ddaf47a82bfc8f706456ff&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;4f1a5f263d2411cc91b967e17559b66f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;8e0d2ffeaae92a7b41df5d1dedde2003&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;70&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-69&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a29d80d04b41aad23a1b817f4f33a1c8&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a3dd363af558599f3e0b8109d888f39b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;8003265357e95368122b6d34d726e143&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;236ee43ba37e5d284f4c2d3885b07fe8&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;69&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-68&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b82fd853a6a647a346bcc2ef72709ec2&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;3288ae61ae347e95ed8dc0d8d0076cf1&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;85e63389e1d2398e9193a64cb5a60618&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;ab157ff912c4eaea22a34a75a8369fc4&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;68&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-67&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a528e5aba6375c6edea3c7322319bff6&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;3aa2f4a61319191ba9da0da335a58316&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;492522666ba84c41253b1f1630a60169&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;48123ef61e1fe482c7dd9663dc32b5ca&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;67&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-66&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;aebb4b2c8afb30f3d86ca0130ea22b18&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;3603510ad47bd9929a8067c22732e351&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;ab3f7535baf13f5b63b8589d498c9072&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;83667b08f50ef137b65f372e47056c4f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;af3dd5c396d3d3217ddd545edf40d8cf&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;66&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-6.31.1&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.31.1&quot;}},&quot;version-6.31.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.31.0&quot;}},&quot;version-6.30.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.30.0&quot;}},&quot;version-6.29.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.29.0&quot;}},&quot;version-6.28.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.28.0&quot;}},&quot;version-6.27.1&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.27.1&quot;}},&quot;version-6.27.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.27.0&quot;}},&quot;version-6.26.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.26.0&quot;}},&quot;version-6.25.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.25.0&quot;}},&quot;version-6.24.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.24.0&quot;}},&quot;version-6.23.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.23.0&quot;}},&quot;version-6.22.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.22.0&quot;}},&quot;version-6.21.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.21.0&quot;}},&quot;version-5.72.0&quot;:{&quot;versions&quot;:{&quot;version&quot;:&quot;5.72.0&quot;},&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;1d43d186aba254c470e458de75718609&quot;:&quot;&lt;p&gt;With an API-only integration, you create your own UI, implement your own client-side logic, and use our API to send and receive payment data. You have full control over the look and feel of your checkout page.&lt;\\\/p&gt;\\n&lt;p&gt;To reduce your development time and resources, you can use one of our pre-built UI options (Drop-in\\\/Components) instead.&lt;\\\/p&gt;&quot;,&quot;b70a81e509a54da6fb991872525e37da&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you build your integration, take into account the following requirements and preparations.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th style=\\&quot;text-align: left;\\&quot;&gt;Requirement&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: left;\\&quot;&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials\\\/roles\\\/\\&quot;&gt;API credential roles&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have the following role: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Checkout webservice role&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/account\\\/user-roles\\&quot;&gt;Customer Area roles&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have one of the following roles: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Merchant admin role&lt;\\\/strong&gt;&lt;\\\/li&gt; &lt;li&gt;&lt;strong&gt;Manage API credentials&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Webhooks&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Subscribe to the following webhook: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Standard webhooks&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;Limitations&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;ul&gt;&lt;li&gt;Your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;PCI compliance assesment&lt;\\\/a&gt; determines your &lt;a href=\\&quot;#collect-card-details\\&quot;&gt;integration options for card payments&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;For 3D Secure 2 authentication for shoppers using Chrome, your &lt;a href=\\&quot;https:\\\/\\\/developers.google.com\\\/search\\\/blog\\\/2020\\\/01\\\/get-ready-for-new-samesitenone-secure\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;cookies must use the &lt;code&gt;SameSite&lt;\\\/code&gt; attribute&lt;\\\/a&gt;. &lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;Setup steps&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Before you begin: &lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen#test-account\\&quot;&gt;Create your Adyen test account&lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;If you want to process payments using raw card data, contact your Adyen Account Manager to confirm that you are eligible.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;aebb4b2c8afb30f3d86ca0130ea22b18&quot;:&quot;&lt;h2 id=\\&quot;how-it-works\\&quot;&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For an API-only integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client&lt;\\\/strong&gt;: shows your custom UI where the shopper makes the payment. Passes data to and receives data from your payment server to handle the payment flow and additional actions on your client.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h2&gt;Integration steps&lt;\\\/h2&gt;\\n&lt;p&gt;The parts of your integration work together to handle the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, make an API request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Show the &lt;a href=\\&quot;#collect-shopper-details\\&quot;&gt;payment form to collect the shopper&#039;s payment details&lt;\\\/a&gt; in your UI.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment request&lt;\\\/a&gt; with the data that you have collected from the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;For some payment methods, you use your client to &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt; that your shopper must do. For example, you redirect your shopper to another website or show a QR code that the shopper uses to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps94511\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#collect-shopper-details\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabLWRJr90750\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;90750&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;3603510ad47bd9929a8067c22732e351&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-66&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v66\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;:&quot;&lt;h2 id=\\&quot;build-your-payment-form\\&quot;&gt;Build your payment form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Create your payment form where the shopper enters their information. We recommend that you collect commonly-used &lt;a href=\\&quot;#information-in-the-payment-form\\&quot;&gt;shopper information in your payment form&lt;\\\/a&gt; to process a transactions, depending on your type of business.&lt;br \\\/&gt;\\n&lt;span id=\\&quot;collect-shopper-details\\&quot;&gt;&lt;\\\/span&gt;&lt;br \\\/&gt;\\nSome payment methods require you to collect, or optionally accept, additional information that you include in the payment request. For the additional information you must collect in your payment form for an individual payment method, go to our &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;guide for the individual payment method&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;We provide &lt;a href=\\&quot;#downloading-logos\\&quot;&gt;payment method and issuer logos that you can download&lt;\\\/a&gt; and use in your payment form.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;collect-card-details\\&quot;&gt;Credit and debit card details&lt;\\\/h3&gt;\\n&lt;p&gt;Because governing bodies and organizations regulate the handling of credit and debit card information strictly, you must make sure that you are compliant when collecting card details. When a shopper selects to pay with a card, use the integration option that corresponds to your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;level of PCI compliance&lt;\\\/a&gt;:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;(Recommended) Adyen&#039;s &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/custom-card-integration\\&quot;&gt;Custom Card Component&lt;\\\/a&gt; with encryption: our pre-built UI with logic to securely encrypt and handle payment card data.&lt;\\\/li&gt;\\n&lt;li&gt;Your own UI and logic to collect and handle &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/raw-card-data\\&quot;&gt;raw card data&lt;\\\/a&gt;: before you build an integration that collects raw credit and debit card data, you must &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;assess your PCI compliance according to the most extensive self-assessment form&lt;\\\/a&gt; and contact your Adyen Account Manager to confirm that you are eligible.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Information in the payment form&lt;\\\/h3&gt;\\n&lt;p&gt;After collecting information in your payment form, you must add it to corresponding API parameters that you include in the payment request.&lt;\\\/p&gt;\\n&lt;p&gt;For example, for commonly-used information:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Field in the payment form&lt;\\\/th&gt;\\n&lt;th&gt;API request parameter&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;First name&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperName.firstName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Last name&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperName.lastName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Email address&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperEmail&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Billing address (multiple fields)&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;billingAddress&lt;\\\/code&gt; (object)&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Shipping address (multiple fields)&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;deliveryAddress&lt;\\\/code&gt; (object)&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Phone number&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;telephoneNumber&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;3847c027124001dbd878122635d13126&quot;:&quot;&lt;div class=\\&quot;accordion-shortcode adl-accordion adl-accordion--max-height-transition\\&quot; data-expand=\\&quot;true\\&quot; data-ignore=\\&quot;anchorjs-link\\&quot;&gt;\\n    \\n    &lt;div class=\\&quot;adl-accordion__item\\&quot; style=\\&quot;\\&quot;&gt;\\n        &lt;div tabindex=\\&quot;0\\&quot; role=\\&quot;item\\&quot; aria-expanded=\\&quot;false\\&quot; class=\\&quot;adl-accordion__header\\&quot;&gt;\\n            &lt;i class=\\&quot;adl-accordion__toggle adl-icon-chevron-down\\&quot;&gt;&lt;\\\/i&gt;\\n            &lt;div class=\\&quot;adl-accordion__title-wrapper\\&quot; data-accordion=\\&quot;#downloading-logos\\&quot;&gt;\\n                                    &lt;h3 class=\\&quot;adl-accordion__title\\&quot;&gt;Downloading logos&lt;\\\/h3&gt;\\n                            &lt;\\\/div&gt;\\n        &lt;\\\/div&gt;\\n        &lt;div role=\\&quot;region\\&quot; class=\\&quot;adl-accordion__content\\&quot;&gt;\\n            \\n&lt;p&gt;If you are building your own UI, we provide payment method and issuing bank logos that you can use on your checkout page. The images are available in PNG format with different sizes and screen resolutions and in SVG format.&lt;\\\/p&gt;\\n&lt;p&gt;If you cannot find a payment method or issuer logo, contact our &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/ca\\\/ca\\\/contactUs\\\/support.shtml?form=other\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Support Team&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h4&gt;Payment method logos&lt;\\\/h4&gt;\\n&lt;p&gt;Download the images from the links below, specifying:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;img-size&lt;\\\/code&gt;: Specify the size for PNG format. Use the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;small&lt;\\\/strong&gt;: Image size 40x26 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;medium&lt;\\\/strong&gt;: Image size 77x50 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;large&lt;\\\/strong&gt;: Image size 154 x 100 pixels&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;suffix&lt;\\\/code&gt;: Specify the image density for PNG format. If not specified, the images will have the same size as the &lt;code&gt;img-size&lt;\\\/code&gt;.  Append any of the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;@2x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;@3x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-ldpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-hdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;pm-type&lt;\\\/code&gt;: The &lt;code&gt;paymentMethods.type&lt;\\\/code&gt; returned in the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response. For example, &lt;strong&gt;googlepay&lt;\\\/strong&gt; or &lt;strong&gt;primeiropay_boleto&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;For cards, the values you should use are specified under &lt;code&gt;brands&lt;\\\/code&gt; with &lt;code&gt;type&lt;\\\/code&gt;: &lt;strong&gt;scheme&lt;\\\/strong&gt;. For example, &lt;code&gt;mc&lt;\\\/code&gt;, &lt;code&gt;visa&lt;\\\/code&gt;, and &lt;code&gt;amex&lt;\\\/code&gt;. To get a generic card logo, set &lt;code&gt;pm-type&lt;\\\/code&gt; to &lt;strong&gt;card&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Download link for SVG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for SVG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[pm-type].svg\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Download link for PNG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for PNG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[img-size]\\\\\\\/[pm-type][suffix].png\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Examples:&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/mc.svg\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/mc.svg&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/large\\\/googlepay@2x.png\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/large\\\/googlepay@2x.png&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h4&gt;Issuing bank logos&lt;\\\/h4&gt;\\n&lt;p&gt;Some payment methods such as iDEAL present a list of issuing banks to the shopper.&lt;\\\/p&gt;\\n&lt;p&gt;Download the issuing bank logos from the links below, specifying:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;img-size&lt;\\\/code&gt;: Specify the size for PNG format. Use the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;small&lt;\\\/strong&gt;: Image size 40x26 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;medium&lt;\\\/strong&gt;: Image size 77x50 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;large&lt;\\\/strong&gt;: Image size 154 x 100 pixels&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;suffix&lt;\\\/code&gt;: Specify the image density for PNG format. If not specified, the images will have the same size as the &lt;code&gt;img-size&lt;\\\/code&gt;.  Append any of the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;@2x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;@3x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-ldpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-hdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;pm-type&lt;\\\/code&gt;: The &lt;code&gt;paymentMethods.type&lt;\\\/code&gt; in objects with &lt;code&gt;details.key&lt;\\\/code&gt; &lt;strong&gt;issuer&lt;\\\/strong&gt; returned in the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response. For example, &lt;strong&gt;ideal&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;issuerid&lt;\\\/code&gt;: The &lt;code&gt;details.items.id&lt;\\\/code&gt; referring to the issuing bank. For example, &lt;strong&gt;1121&lt;\\\/strong&gt; and &lt;strong&gt;1151&lt;\\\/strong&gt; for iDEAL.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Download link for SVG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for SVG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[pm-type]\\\\\\\/[issuerid].svg\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Download link for PNG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for PNG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[img-size]\\\\\\\/[pm-type]\\\\\\\/[issuerid][suffix].png\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Examples:&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/ideal\\\/1121.svg\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/ideal\\\/1121.svg&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/small\\\/ideal\\\/1151-xxhdpi.png\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/small\\\/ideal\\\/1151-xxhdpi.png&lt;\\\/a&gt;&lt;\\\/p&gt;\\n\\n        &lt;\\\/div&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;ab3f7535baf13f5b63b8589d498c9072&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-66&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v66\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Store the &lt;code&gt;action.paymentData&lt;\\\/code&gt; object on your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#additional-action\\&quot;&gt;Handle the additional action&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQABAgBJp\\\\\\\/z\\\\\\\/T3+6P ...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;83667b08f50ef137b65f372e47056c4f&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabvkyqH99062\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;99062&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice note\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;For security reasons, when displaying the redirect in the app, we recommend that you use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/safariservices\\\\\\\/sfsafariviewcontroller\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;SFSafariViewController&amp;lt;\\\\\\\/a&amp;gt; for iOS or &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.chrome.com\\\\\\\/multidevice\\\\\\\/android\\\\\\\/customtabs\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Chrome Custom Tabs&amp;lt;\\\\\\\/a&amp;gt; for Android, instead of WebView objects. Also refer to the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/topic\\\\\\\/security\\\\\\\/best-practices#webview\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;security best practices&amp;lt;\\\\\\\/a&amp;gt; for WebView.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;TermUrl&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL for your page, to redirect the shopper to, after they finish authentication on the 3D Secure 2 page. This should be the same as the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; that you include when you &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;make a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-6067370540&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;TermUrl=https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;af3dd5c396d3d3217ddd545edf40d8cf&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the action you handled:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If you handled a redirect:\\n&lt;ul&gt;\\n&lt;li&gt;For a payment method redirect, pass the URL-decoded &lt;code&gt;redirectResult&lt;\\\/code&gt; and the complete &lt;code&gt;paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;li&gt;For a 3D Secure 2 redirect, pass the URL-decoded &lt;code&gt;MD&lt;\\\/code&gt;, &lt;code&gt;PaRes&lt;\\\/code&gt;, the complete &lt;code&gt;paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;li&gt;If you handled a non-redirect additional action: pass the complete &lt;code&gt;action.paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;What you do depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response includes an additional action.&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt; using the data from the latest  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response instead of the data from the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response without an action for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response without an action for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After the shopper finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;\\n  &lt;code&gt;resultCode&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;9339cccb051868e8f60981049948cdeb&quot;:&quot;&lt;h2 id=\\&quot;error-handling\\&quot;&gt;Error handling&lt;\\\/h2&gt;\\n&lt;p&gt;In case you encounter errors in your integration, refer to the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/error-codes\\&quot;&gt;API error codes&lt;\\\/a&gt;: If you receive a non-HTTP 200 response, use the &lt;code&gt;errorCode&lt;\\\/code&gt; to troubleshoot and modify your request.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/refusal-reasons\\&quot;&gt;Payment refusals&lt;\\\/a&gt;: If you receive an HTTP 200 response with an &lt;strong&gt;Error&lt;\\\/strong&gt; or &lt;strong&gt;Refused&lt;\\\/strong&gt; &lt;code&gt;resultCode&lt;\\\/code&gt;, check the refusal reason and, if possible, modify your request.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;51976743859edfbe0863f8222febf901&quot;:&quot;&lt;h2 id=\\&quot;test-and-go-live\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0&lt;a href=\\&quot;\\\/development-resources\\\/testing\\&quot;&gt;test your integration&lt;\\\/a&gt;. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting:\\n&lt;ul&gt;\\n&lt;li&gt;the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;, if you are using the Custom Card Component.&lt;\\\/li&gt;\\n&lt;li&gt;the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-D_Merchant.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-D&lt;\\\/a&gt;, if you are submitting raw card data.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.\\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;b21f96573eb957635d49f8525a08e0f2&quot;:&quot;&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps87947\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Set up notifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Receive confirmation when a payment is authorised or fails.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Payment modifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;572979e4f54f785d3cc1e14627fadd95&quot;:&quot;&lt;h2 id=\\&quot;how-it-works\\&quot;&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For an API-only integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client&lt;\\\/strong&gt;: shows your custom UI where the shopper makes the payment. Passes data to and receives data from your payment server to handle the payment flow and additional actions on your client.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h2&gt;Integration steps&lt;\\\/h2&gt;\\n&lt;p&gt;The parts of your integration work together to handle the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, make an API request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Show the &lt;a href=\\&quot;#collect-shopper-details\\&quot;&gt;payment form to collect the shopper&#039;s payment details&lt;\\\/a&gt; in your UI.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment request&lt;\\\/a&gt; with the data that you have collected from the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;For some payment methods, you use your client to &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt; that your shopper must do. For example, you redirect your shopper to another website or show a QR code that the shopper uses to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps91523\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#collect-shopper-details\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;a528e5aba6375c6edea3c7322319bff6&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/67\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;3aa2f4a61319191ba9da0da335a58316&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;492522666ba84c41253b1f1630a60169&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tab4z7IJ51070\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;51070&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice note\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;For security reasons, when displaying the redirect in the app, we recommend that you use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/safariservices\\\\\\\/sfsafariviewcontroller\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;SFSafariViewController&amp;lt;\\\\\\\/a&amp;gt; for iOS or &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.chrome.com\\\\\\\/multidevice\\\\\\\/android\\\\\\\/customtabs\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Chrome Custom Tabs&amp;lt;\\\\\\\/a&amp;gt; for Android, instead of WebView objects. Also refer to the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/topic\\\\\\\/security\\\\\\\/best-practices#webview\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;security best practices&amp;lt;\\\\\\\/a&amp;gt; for WebView.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;TermUrl&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL for your page, to redirect the shopper to, after they finish authentication on the 3D Secure 2 page. This should be the same as the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; that you include when you &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;make a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-6067370540&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;TermUrl=https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;48123ef61e1fe482c7dd9663dc32b5ca&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;b82fd853a6a647a346bcc2ef72709ec2&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/68\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;3288ae61ae347e95ed8dc0d8d0076cf1&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;85e63389e1d2398e9193a64cb5a60618&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabpDrHn45151\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;45151&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice note\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;For security reasons, when displaying the redirect in the app, we recommend that you use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/safariservices\\\\\\\/sfsafariviewcontroller\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;SFSafariViewController&amp;lt;\\\\\\\/a&amp;gt; for iOS or &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.chrome.com\\\\\\\/multidevice\\\\\\\/android\\\\\\\/customtabs\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Chrome Custom Tabs&amp;lt;\\\\\\\/a&amp;gt; for Android, instead of WebView objects. Also refer to the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/topic\\\\\\\/security\\\\\\\/best-practices#webview\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;security best practices&amp;lt;\\\\\\\/a&amp;gt; for WebView.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;TermUrl&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL for your page, to redirect the shopper to, after they finish authentication on the 3D Secure 2 page. This should be the same as the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; that you include when you &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;make a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-6067370540&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;TermUrl=https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;ab157ff912c4eaea22a34a75a8369fc4&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;a29d80d04b41aad23a1b817f4f33a1c8&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/69\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;a3dd363af558599f3e0b8109d888f39b&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8003265357e95368122b6d34d726e143&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tablzvk158006\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;58006&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice note\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;For security reasons, when displaying the redirect in the app, we recommend that you use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/safariservices\\\\\\\/sfsafariviewcontroller\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;SFSafariViewController&amp;lt;\\\\\\\/a&amp;gt; for iOS or &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.chrome.com\\\\\\\/multidevice\\\\\\\/android\\\\\\\/customtabs\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Chrome Custom Tabs&amp;lt;\\\\\\\/a&amp;gt; for Android, instead of WebView objects. Also refer to the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/topic\\\\\\\/security\\\\\\\/best-practices#webview\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;security best practices&amp;lt;\\\\\\\/a&amp;gt; for WebView.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-1374613331&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\\\\\\\\\/checkoutshopper\\\\\\\\\\\\\\\/threeDS\\\\\\\\\\\\\\\/checkoutRedirect\\\\\\\\\\\\\\\/... \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;236ee43ba37e5d284f4c2d3885b07fe8&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;b174e01ee8db2d61b498336fc129620b&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/70\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest()\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .countryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  .channel(PaymentMethodsRequest.ChannelEnum.WEB)\\\\n  .shopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.3.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentMethodsRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentMethodsRequest = new PaymentMethodsRequest();\\\\n$paymentMethodsRequest\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setCountryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  -&amp;gt;setChannel(\\\\&amp;quot;Web\\\\&amp;quot;)\\\\n  -&amp;gt;setShopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .NET API Library v32.2.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest\\\\n{\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode = \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  Channel = PaymentMethodsRequest.ChannelEnum.Web,\\\\n  ShopperLocale = \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.1.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentMethodsRequest := checkout.PaymentMethodsRequest{\\\\n  Amount: &amp;amp;amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode: common.PtrString(\\\\&amp;quot;NL\\\\&amp;quot;),\\\\n  Channel: common.PtrString(\\\\&amp;quot;Web\\\\&amp;quot;),\\\\n  ShopperLocale: common.PtrString(\\\\&amp;quot;nl-NL\\\\&amp;quot;),\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v11.0.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Web&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.Web,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;68dfb3ae27ddaf47a82bfc8f706456ff&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-70&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v70\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;4f1a5f263d2411cc91b967e17559b66f&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabcSnh733442\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;33442&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice note\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;For security reasons, when displaying the redirect in the app, we recommend that you use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/safariservices\\\\\\\/sfsafariviewcontroller\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;SFSafariViewController&amp;lt;\\\\\\\/a&amp;gt; for iOS or &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.chrome.com\\\\\\\/multidevice\\\\\\\/android\\\\\\\/customtabs\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Chrome Custom Tabs&amp;lt;\\\\\\\/a&amp;gt; for Android, instead of WebView objects. Also refer to the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/topic\\\\\\\/security\\\\\\\/best-practices#webview\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;security best practices&amp;lt;\\\\\\\/a&amp;gt; for WebView.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-1374613331&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\\\\\\\\\/checkoutshopper\\\\\\\\\\\\\\\/threeDS\\\\\\\\\\\\\\\/checkoutRedirect\\\\\\\\\\\\\\\/... \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8e0d2ffeaae92a7b41df5d1dedde2003&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-70&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v70\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;870349294bcfb296564ec9737d0cc5aa&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/71\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest()\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .countryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  .channel(PaymentMethodsRequest.ChannelEnum.WEB)\\\\n  .shopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.3.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentMethodsRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentMethodsRequest = new PaymentMethodsRequest();\\\\n$paymentMethodsRequest\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setCountryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  -&amp;gt;setChannel(\\\\&amp;quot;Web\\\\&amp;quot;)\\\\n  -&amp;gt;setShopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .NET API Library v32.2.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest\\\\n{\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode = \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  Channel = PaymentMethodsRequest.ChannelEnum.Web,\\\\n  ShopperLocale = \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.1.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentMethodsRequest := checkout.PaymentMethodsRequest{\\\\n  Amount: &amp;amp;amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode: common.PtrString(\\\\&amp;quot;NL\\\\&amp;quot;),\\\\n  Channel: common.PtrString(\\\\&amp;quot;Web\\\\&amp;quot;),\\\\n  ShopperLocale: common.PtrString(\\\\&amp;quot;nl-NL\\\\&amp;quot;),\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v11.0.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Web&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.Web,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Cards\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;c60029ff5916117a06695ddc18cb292e&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/71\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: {\\\\n    type: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/71\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;786c1dafef7066cbc356a23eb0c207ef&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentDetailsResponse response = service.paymentsDetails(paymentDetailsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentsDetails($paymentDetailsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentsDetails(paymentDetailsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentDetailsRequest = {\\\\n  details: {\\\\n    redirectResult: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsDetailsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentDetailsRequest(paymentDetailsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentsDetails(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :details =&amp;gt; {\\\\n    :redirectResult =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cyI6IlkifQ==&#039;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;f0466956e11aa80ed97962b8f56d02b8&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/72\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v11.0.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Web&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.Web,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Cards\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;07d2ecb5ed3e5b4ce941e6fc8d8e41fe&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.0\\\\nimport com.adyen.Client;\\\\nimport com.adyen.enums.Environment;\\\\nimport com.adyen.model.checkout.*;\\\\nimport com.adyen.model.RequestOptions;\\\\nimport com.adyen.service.checkout.*;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8f73244559657311010bcfd0a3711a82&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.0\\\\nimport com.adyen.Client;\\\\nimport com.adyen.enums.Environment;\\\\nimport com.adyen.model.checkout.*;\\\\nimport com.adyen.model.RequestOptions;\\\\nimport com.adyen.service.checkout.*;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentDetailsResponse response = service.paymentsDetails(paymentDetailsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentsDetails($paymentDetailsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentsDetails(paymentDetailsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsDetailsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentDetailsRequest(paymentDetailsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentsDetails(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :details =&amp;gt; {\\\\n    :redirectResult =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cyI6IlkifQ==&#039;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;}}}},&quot;ios&quot;:{&quot;label&quot;:&quot;iOS&quot;,&quot;integrations&quot;:{&quot;drop-in&quot;:{&quot;label&quot;:&quot;Drop-in&quot;,&quot;description&quot;:&quot;Use our pre-built UI for accepting payments&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;iOS Drop-in&lt;\\\/h2&gt;\\n&lt;p&gt;Render a list of available payment methods anywhere in your app.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=ios%20drop-in\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Lowest development time to integrate payment methods&lt;\\\/li&gt;\\n&lt;li&gt;UI styling customization for the list of payment methods&lt;\\\/li&gt;\\n&lt;li&gt;Adding payment methods to the list requires no extra development time&lt;\\\/li&gt;\\n&lt;li&gt;3D Secure 2 support built in&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;visual_images&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/ios\\\/dropin\\\/visual\\\/ios-dropin.svg&quot;,&quot;external_content&quot;:&quot;&lt;h3&gt;Adyen iOS on GitHub&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-ios\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View the Adyen iOS repository&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-ios\\\/tree\\\/develop\\\/Demo\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View our example integration&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.19.1\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View the code explorer on GitHub Pages&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;external_icon&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/ios\\\/github\\\/github-mark.png&quot;,&quot;versions&quot;:{&quot;version-5.23.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d50e2a5621f075f443fbe9e982d8113e&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.23.1&quot;}},&quot;version-5.23.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d50e2a5621f075f443fbe9e982d8113e&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.23.0&quot;}},&quot;version-5.22.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d50e2a5621f075f443fbe9e982d8113e&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.22.2&quot;}},&quot;version-5.22.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d50e2a5621f075f443fbe9e982d8113e&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.22.1&quot;}},&quot;version-5.22.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d50e2a5621f075f443fbe9e982d8113e&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.22.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-5.21.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.21.1&quot;}},&quot;version-5.21.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.21.0&quot;}},&quot;version-5.20.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.20.2&quot;}},&quot;version-5.20.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.20.1&quot;}},&quot;version-5.20.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.20.0&quot;}},&quot;version-5.19.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.19.2&quot;}},&quot;version-5.19.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.19.1&quot;}},&quot;version-5.19.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.19.0&quot;}},&quot;version-5.18.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.18.1&quot;}},&quot;version-5.18.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.18.0&quot;}},&quot;version-5.17.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.17.0&quot;}},&quot;version-5.16.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.0&quot;}},&quot;version-5.15.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.15.0&quot;}},&quot;version-5.14.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;cf340e32a481631aef5794011eb0840e&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.14.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-5.13.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.13.0&quot;}},&quot;version-5.12.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.12.0&quot;}},&quot;version-5.11.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.11.0&quot;}},&quot;version-5.10.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.10.0&quot;}},&quot;version-5.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.9.0&quot;}},&quot;version-5.8.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.8.0&quot;}},&quot;version-5.7.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.7.1&quot;}},&quot;version-5.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.7.0&quot;}},&quot;version-5.6.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.6.0&quot;}},&quot;version-5.5.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.5.0&quot;}},&quot;version-5.4.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.4.1&quot;}},&quot;version-5.4.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.4.0&quot;}},&quot;version-5.3.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.3.0&quot;}},&quot;version-5.2.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.2.0&quot;}},&quot;version-5.1.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.1.0&quot;}},&quot;version-5.0.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;1e56b56129c68c71f81a5947950e5911&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-4.16.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.16.1&quot;}},&quot;version-4.14.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.14.0&quot;}},&quot;version-4.13.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.0&quot;}},&quot;version-4.12.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.12.1&quot;}},&quot;version-4.12.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.12.0&quot;}},&quot;version-4.11.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.11.2&quot;}},&quot;version-4.11.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.11.1&quot;}},&quot;version-4.11.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.11.0&quot;}},&quot;version-4.10.5&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.5&quot;}},&quot;version-4.10.4&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ec8fd73cf016814a90ad118d03934f44&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;524adaa96a429f56bd36edd91b35e0fa&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;447742a57adb89e8f10c5a9f67af12f1&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;3dab84235781457007af74c4ee02da8d&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.4&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-4.10.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;98eecc8f8590b5feae97a514168fd871&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;915a9112d0531a040d04d9e8c3a2d247&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;0d1bfac4b394d836e9bfe04292e0875e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;68880e5c16a9b216bc7599de7deb9c80&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.3&quot;}},&quot;version-4.10.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;98eecc8f8590b5feae97a514168fd871&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;915a9112d0531a040d04d9e8c3a2d247&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;0d1bfac4b394d836e9bfe04292e0875e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;68880e5c16a9b216bc7599de7deb9c80&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.2&quot;}},&quot;version-4.10.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;98eecc8f8590b5feae97a514168fd871&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;915a9112d0531a040d04d9e8c3a2d247&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;0d1bfac4b394d836e9bfe04292e0875e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;68880e5c16a9b216bc7599de7deb9c80&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.1&quot;}},&quot;version-4.10.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;98eecc8f8590b5feae97a514168fd871&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;915a9112d0531a040d04d9e8c3a2d247&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;0d1bfac4b394d836e9bfe04292e0875e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;68880e5c16a9b216bc7599de7deb9c80&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.0&quot;}},&quot;version-4.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;ec6440f78438465397fdc514d81ebb4c&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;98eecc8f8590b5feae97a514168fd871&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9f93678f97814cd8def9c5c7240281c9&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;935751585faac93aeb984aad891a8de3&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;915a9112d0531a040d04d9e8c3a2d247&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-dropin&quot;:{&quot;$ref&quot;:&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;62a63373c5179345407733f2fca597c2&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;0d1bfac4b394d836e9bfe04292e0875e&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;68880e5c16a9b216bc7599de7deb9c80&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;4.9.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;ec6440f78438465397fdc514d81ebb4c&quot;:&quot;&lt;p&gt;Drop-in is our pre-built UI solution for accepting payments in your app. Drop-in shows all payment methods as a list, in the same block. For the Advanced flow, your server makes API requests to the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt;,  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt;, and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; endpoints.&lt;\\\/p&gt;&quot;,&quot;c0b95c28fc82867e9ef3c3e6ee765fb1&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you begin to integrate, make sure you have followed the &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen guide&lt;\\\/a&gt; to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Get an overview of the steps needed to accept live payments.&lt;\\\/li&gt;\\n&lt;li&gt;Create your test account.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After you have created your test account:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt; to know the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Install the Adyen iOS client-side library&lt;\\\/h3&gt;\\n&lt;p&gt;Choose how you want to install the Adyen iOS client-side library:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabb6BWA56269\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;56269&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Swift Package Manager&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;To install iOS Drop-in using Swift Package Manager, &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/xcode\\\\\\\/adding_package_dependencies_to_your_app\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;follow the Apple guide&amp;lt;\\\\\\\/a&amp;gt; and specify:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;The repository URL as &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ios&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The version to be at least &amp;lt;strong&amp;gt;3.8.0&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;swift_package_manager_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;CocoaPods&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;To install iOS Drop-in from CocoaPods:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;Add &amp;lt;code&amp;gt;pod &amp;#039;Adyen&amp;#039;&amp;lt;\\\\\\\/code&amp;gt; to your &amp;lt;code&amp;gt;Podfile&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;Run &amp;lt;code&amp;gt;pod install&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;cocoapods_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Carthage&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;To install iOS Drop-in from Carthage:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;Add &amp;lt;code&amp;gt;github \\\\&amp;quot;adyen\\\\\\\/adyen-ios\\\\&amp;quot;&amp;lt;\\\\\\\/code&amp;gt; to your &amp;lt;code&amp;gt;Cartfile&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;Run &amp;lt;code&amp;gt;carthage update&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;Link the framework with your target as described in &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Carthage\\\\\\\/Carthage#adding-frameworks-to-an-application\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Carthage Readme&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;carthage_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3 id=\\&quot;client-key\\&quot;&gt;Get your client key&lt;\\\/h3&gt;\\n&lt;p&gt;You need a &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client key&lt;\\\/a&gt;, a public key linked to your API credential, that the iOS Drop-in uses for client-side authentication.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Log in to your &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Go to &lt;strong&gt;Developers&lt;\\\/strong&gt; &amp;gt; &lt;strong&gt;API credentials&lt;\\\/strong&gt;, and select the API credential for your integration, for example &lt;strong&gt;ws@Company.[YourCompanyAccount]&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Under &lt;strong&gt;Authentication&lt;\\\/strong&gt;, select &lt;strong&gt;Generate New Client Key&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Select &lt;strong&gt;Save&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;98eecc8f8590b5feae97a514168fd871&quot;:&quot;&lt;h2&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Drop-in integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a rel=\\&quot;lightbox\\&quot; href=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/ios\\\/4-9-0\\\/drop-in\\\/02.how-it-works\\\/drop-in-flow.jpg\\&quot; src=\\&quot;\\&quot;&gt;\\n  &lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/ios\\\/4-9-0\\\/drop-in\\\/02.how-it-works\\\/drop-in-flow.jpg\\&quot; \\\/&gt;\\n&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, submit a request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#add\\&quot;&gt;Create an instance of Drop-in&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;submit a payment request&lt;\\\/a&gt; with the data returned by Drop-in.&lt;\\\/li&gt;\\n&lt;li&gt;Determine from the response if you need to &lt;a href=\\&quot;#additional-action\\&quot;&gt;perform additional actions on your client app&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;submit additional payment details&lt;\\\/a&gt; with the data returned by Drop-in.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps79262\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;h6 class=\\&quot;next-steps__title\\&quot;&gt;Payment server&lt;\\\/h6&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#add\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;h6 class=\\&quot;next-steps__title\\&quot;&gt;Client  app&lt;\\\/h6&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;h6 class=\\&quot;next-steps__title\\&quot;&gt;Webhook server&lt;\\\/h6&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabTEOfJ19664\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;19664&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;9f93678f97814cd8def9c5c7240281c9&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.&lt;\\\/p&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/#\\\/CheckoutService\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;We use the optional parameters to tailor the list of available payment methods to your shopper.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The platform where the payment is taking place. Use &lt;strong&gt;iOS&lt;\\\/strong&gt;. Adyen returns only the payment methods available for iOS.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. Adyen returns only the payment methods available in this country. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, the &lt;code&gt;shopperlocale&lt;\\\/code&gt; is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code. You also need to set the same &lt;code&gt;ShopperLocale&lt;\\\/code&gt; within your Drop-in configuration.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The following example shows how to get the available payment methods for a shopper in the &lt;strong&gt;Netherlands&lt;\\\/strong&gt;, for a payment of &lt;strong&gt;EUR&amp;nbsp;10&lt;\\\/strong&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;advanced-flow-post-payment-methods-request&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Android&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available &lt;code&gt;paymentMethods&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;\\\/paymentMethods response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;Cards\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;scheme\\\\\\&quot;\\\\n    ...\\\\n  },\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n  },\\\\n  ...\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Pass the response to your client app. You will use this in the next step to present which payment methods are available to the shopper.&lt;\\\/p&gt;&quot;,&quot;2e6d82c9a7b49d18a4b81e17e2efb1c0&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Drop-in to your payment form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Next, use Drop-in to show the available payment methods and to collect payment details from your shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Decode the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response with the &lt;code&gt;PaymentMethods&lt;\\\/code&gt; structure.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;let paymentMethods = try JSONDecoder().decode(PaymentMethods.self, from: paymentMethodsResponse)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;2\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create an instance of &lt;code&gt;APIContext&lt;\\\/code&gt; with the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client key&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/environment\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;live environments&lt;\\\/a&gt;.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;APIContext initialization&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ When you are ready to go live, change environment to Environment.live\\\\n\\\\\\\/\\\\\\\/ You can also use other environment values described in https:\\\\\\\/\\\\\\\/adyen.github.io\\\\\\\/adyen-ios\\\\\\\/Docs\\\\\\\/Structs\\\\\\\/Environment.html\\\\nlet apiContext = APIContext(environment: Environment.test, clientKey: clientKey)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Inject the &lt;code&gt;APIContext&lt;\\\/code&gt; instance and add additional configuration in an instance of &lt;code&gt;DropInComponent.Configuration&lt;\\\/code&gt;. Check specific payment method pages to confirm if you need to include additional required parameters.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;\\\/\\\/ Check specific payment method pages to confirm if you need to configure additional required parameters.\\nlet configuration = DropInComponent.Configuration(apiContext: apiContext)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;4\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Initialize the &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;DropInComponent&lt;\\\/code&gt;\\n&lt;\\\/a&gt; class.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethods&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full, decoded &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsConfiguration&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains required or optional configuration for specific payment methods. For more information, refer to &lt;a href=\\&quot;\\\/online-payments\\\/supported-payment-methods\\&quot;&gt;supported payment methods&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;payment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Show the amount a shopper has to pay on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button. To do this, you include the &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;currency code&lt;\\\/a&gt; and the amount in minor units that the shopper has to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;let dropInComponent = DropInComponent(paymentMethods: paymentMethods, configuration: dropInConfiguration)\\ndropInComponent.delegate = self\\n\\\/\\\/ Keep the Drop-in instance to avoid it being destroyed after the function is executed.\\nself.dropInComponent = dropInComponent\\n\\\/\\\/ Optional. In this example, the Pay button will show 10 EUR.\\ndropInComponent.payment = Payment(amount: Amount(value: 1000, currencyCode: \\&quot;EUR\\&quot;))\\npresent(dropInComponent.viewController, animated: true)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;5\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;After the shopper selects a payment method and provides payment details, Drop-in invokes the &lt;code&gt;didSubmit&lt;\\\/code&gt; method. Get the contents of &lt;code&gt;data.paymentMethod&lt;\\\/code&gt; and pass this to your server.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func didSubmit(_ data: PaymentComponentData, for paymentMethod: PaymentMethod, from component: DropInComponent)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;p&gt;If an error occurs on the app, Drop-in invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method. Dismiss Drop-in&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func didFail(with error: Error, from component: DropInComponent)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;p&gt;If the shopper decides not to continue with the selected payment method, Drop-in invokes the &lt;code&gt;didCancel&lt;\\\/code&gt; method. You can use &lt;code&gt;didCancel&lt;\\\/code&gt; to track the state of the payment.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func didCancel(component: PaymentComponent, from dropInComponent: DropInComponent)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div class=\\&quot;sc-notice info\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For more information on iOS Drop-in classes, see our &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;reference documentation&lt;\\\/a&gt; page.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&quot;,&quot;935751585faac93aeb984aad891a8de3&quot;:&quot;&lt;h3 id=\\&quot;localization\\&quot;&gt;Localization&lt;\\\/h3&gt;\\n&lt;p&gt;iOS Drop-in supports the languages listed &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-ios\\\/tree\\\/master\\\/Adyen\\\/Assets\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;here&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To customize a localization, add a new &lt;code&gt;localizable.strings&lt;\\\/code&gt; file for the language that you need. You can also override &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-ios\\\/blob\\\/master\\\/Adyen\\\/Assets\\\/en-US.lproj\\\/Localizable.strings\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;existing strings&lt;\\\/a&gt; by using the same keys.&lt;\\\/p&gt;\\n&lt;p&gt;For example, to override the cardholder name field title, set the following on your &lt;code&gt;localizable.strings&lt;\\\/code&gt; file:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;\\&quot;adyen.card.nameItem.title\\&quot; = \\&quot;Your cardholder name\\&quot;;&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;p&gt;To find localized strings, the library first checks your custom &lt;code&gt;localizable.strings&lt;\\\/code&gt; file, and then the default Adyen file.&lt;\\\/p&gt;\\n&lt;p&gt;You can use &lt;code&gt;LocalizationParameters&lt;\\\/code&gt; to customize the localization file name, bundle, or the separator for translation strings.&lt;\\\/p&gt;\\n&lt;p&gt;For example, if you store translations in &lt;code&gt;MyLocalizable.strings&lt;\\\/code&gt; files in the shared bundle &lt;code&gt;CommonBundle&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;let localizationParameters = LocalizationParameters(bundle: commonBundle, tableName: \\&quot;MyLocalizable\\&quot;)\\ndropInComponent.localizationParameters = localizationParameters&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&quot;,&quot;a5dbc5a7e38da8304185a9b07140878a&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full data from &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request specifying:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0of the payment and\\u00a0its &lt;code&gt;value&lt;\\\/code&gt;\\u00a0in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;data.paymentMethod&lt;\\\/code&gt; from the &lt;code&gt;didSubmit&lt;\\\/code&gt; method from your client app.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL the shopper should be taken back to after a redirection. Use the custom URL for your app, for example, &lt;code&gt;my-app:\\\/\\\/adyen&lt;\\\/code&gt;, to take the shopper back to your app after they complete the payment outside of your app. For more information on setting a custom URL scheme, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;. The URL can contain a maximum of 1024 characters. You can also include your own additional query parameters, for example, shopper ID or order reference number.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;915a9112d0531a040d04d9e8c3a2d247&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that you can add payment methods that require additional actions.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;To see if a specific payment method requires an additional action, go to the &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;To handle the action:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;dropInComponent.handle(action)&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to trigger Drop-in to perform additional actions.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;let action = try JSONDecoder().decode(Action.self, from: actionData)\\ndropInComponent.handle(action)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Drop-in performs additional actions in your app, depending on the &lt;code&gt;action.type&lt;\\\/code&gt;. Your next steps depend on the type of action that Drop-in performs.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;The action type determines your next step:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt; (&lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;redirect&lt;\\\/strong&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt; (&lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2&lt;\\\/strong&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt; (&lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt; (&lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt; (&lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt; (&lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;)&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a id=\\&quot;redirect-component\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, Drop-in redirects your shopper to another website to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper returns to your app, inform Drop-in. To do this, implement the following in your &lt;code&gt;UIApplicationDelegate&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey: Any] = [:]) -&amp;gt; Bool {\\nRedirectComponent.applicationDidOpen(from: url)\\nreturn true\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;After Drop-in completes the additional action, Drop-in invokes the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss Drop-in&lt;\\\/a&gt; immediately or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If an error occurs in the app, Drop-in invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method. Dismiss Drop-in&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;The actions you can handle for 3D Secure 2 authentication depend on the version of Checkout API that you are using.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabdQmW582665\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;82665&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;v67 or later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;For Checkout API v67 or later:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;When the response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2&amp;lt;\\\\\\\/strong&amp;gt;, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;After Drop-in completes the additional action, it invokes the &amp;lt;code&amp;gt;didProvide&amp;lt;\\\\\\\/code&amp;gt; method.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;didProvide with action data&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;swift\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Get the &amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;didProvide&amp;lt;\\\\\\\/code&amp;gt; method.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#dismiss\\\\&amp;quot;&amp;gt;Dismiss &amp;lt;code&amp;gt;dropInComponent&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/a&amp;gt; now or after the following step.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Pass the contents of &amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt; to your server.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67_or_later_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;v66 or earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;For Checkout API v66 or earlier, you can get two action types for 3D Secure 2 authentication:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;When the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2Fingerprint&amp;lt;\\\\\\\/strong&amp;gt;, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;When the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2Challenge&amp;lt;\\\\\\\/strong&amp;gt;, the payment qualifies for 3D Secure 2 and it goes through the challenge flow.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;After Drop-in completes the additional action, it invokes the &amp;lt;code&amp;gt;didProvide&amp;lt;\\\\\\\/code&amp;gt; method.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;didProvide with action data&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;swift\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Get the &amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;didProvide&amp;lt;\\\\\\\/code&amp;gt; method.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#dismiss\\\\&amp;quot;&amp;gt;Dismiss &amp;lt;code&amp;gt;dropInComponent&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/a&amp;gt; now or after the following step.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Pass the contents of &amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt; to your server.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66_or_earlier_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment. &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to show the UI for QR code payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Drop-in polls the payment status and, if completed, calls the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss &lt;code&gt;dropInComponent&lt;\\\/code&gt;&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use the payment method&#039;s app to complete the payment. &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; triggers the app switch from your app to the payment method&#039;s app, if installed in the shopper&#039;s device.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper returns to your app, Drop-in invokes the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss &lt;code&gt;dropInComponent&lt;\\\/code&gt;&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment. &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to present UI for voucher. The shopper shares, saves the voucher as an image or, in some cases, adds the voucher to Apple Wallet.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper completes the flow, Drop-in invokes the &lt;code&gt;didComplete&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss &lt;code&gt;dropInComponent&lt;\\\/code&gt;&lt;\\\/a&gt;. The payment flow in your app is complete.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;After the shopper pays, or the voucher expires, your webhook server gets the &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook to update the payment status&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to show the await UI. The shopper continues payment process outside of your app. &lt;br&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Drop-in polls the payment status and, if completed, calls the &lt;code&gt;didProvide&lt;\\\/code&gt; the &lt;code&gt;didProvide&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss &lt;code&gt;dropInComponent&lt;\\\/code&gt;&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Handle the redirect result&lt;\\\/h3&gt;\\n&lt;p&gt;If the &lt;code&gt;Action&lt;\\\/code&gt; class returns &lt;code&gt;.redirect&lt;\\\/code&gt;, the shopper is redirected to an external site or to another application to complete the payment. You then need to inform Drop-in when the shopper returns to your app. To do this, implement the following in your &lt;code&gt;UIApplicationDelegate&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey: Any] = [:]) -&amp;gt; Bool {\\n    RedirectComponent.applicationDidOpen(from: url)\\n    return true\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;&quot;,&quot;e8497800251164596b4a099e37060eb1&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your app, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request including the full &lt;code&gt;data&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to send additional payment details&#039;\\&quot; :id=\\&quot;&#039;details-request-component&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{hint:object passed from your client app}STATE_DATA{\\\\\\\/hint}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nString xApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nClient client = new Client(xApiKey,Environment.TEST);\\\\nCheckout checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nPaymentsDetailsRequest paymentsDetailsRequest = STATE_DATA;\\\\nPaymentsResponse paymentsDetailsResponse = checkout.paymentsDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\n$params = STATE_DATA;\\\\n$result = $service-&amp;gt;paymentsDetails($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed.\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from the client app, deserialized from JSON to a data structure.\\\\nvar paymentsDetailsRequest = STATE_DATA;\\\\nvar paymentsDetailsResponse = checkout.PaymentDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;[ADYEN_API_KEY]&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\ncheckout.paymentsDetails(STATE_DATA).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;[ADYEN_API_KEY]\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nreq := STATE_DATA;\\\\nres, httpRes, err := client.Checkout.PaymentsDetails(&amp;amp;req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresult = adyen.checkout.payments_details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresponse = adyen.checkout.payments.details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client\\\\n   puts response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode to your client\\\\n   puts response.body[:resultCode]\\\\nend&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response from your server to your client app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;485200eecef2fa2e22a82c4cd6eb8653&quot;:&quot;&lt;h2 id=\\&quot;dismiss\\&quot;&gt;Dismiss Drop-in&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After you make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request to submit the payment data or a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request to send additional details, dismiss Drop-in to finalize the payment flow.&lt;\\\/p&gt;\\n&lt;p&gt;Call &lt;code&gt;finalizeIfNeeded&lt;\\\/code&gt; and do the following, depending on what the Drop-in handled:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;&lt;\\\/th&gt;\\n&lt;th&gt;What to do&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Result code&lt;\\\/td&gt;\\n&lt;td&gt;If no further steps are required from the application, dismiss Drop-in.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Error&lt;\\\/td&gt;\\n&lt;td&gt;Dismiss Drop-in, and show an error message.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;Implement the following in your &lt;code&gt;dropInComponent&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Implement finalizeIfNeeded to dismiss Drop-in&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;dropInComponent?.finalizeIfNeeded(with: isSuccessful) { [weak self] in\\\\n    guard let self else { return }\\\\n    myCheckoutViewController.dismiss(animated: true) { [weak self] in\\\\n        \\\\\\\/\\\\\\\/ Continue the flow.\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After Drop-in finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;\\n  &lt;code&gt;resultCode&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;9339cccb051868e8f60981049948cdeb&quot;:&quot;&lt;h2 id=\\&quot;error-handling\\&quot;&gt;Error handling&lt;\\\/h2&gt;\\n&lt;p&gt;In case you encounter errors in your integration, refer to the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/error-codes\\&quot;&gt;API error codes&lt;\\\/a&gt;: If you receive a non-HTTP 200 response, use the &lt;code&gt;errorCode&lt;\\\/code&gt; to troubleshoot and modify your request.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/refusal-reasons\\&quot;&gt;Payment refusals&lt;\\\/a&gt;: If you receive an HTTP 200 response with an &lt;strong&gt;Error&lt;\\\/strong&gt; or &lt;strong&gt;Refused&lt;\\\/strong&gt; &lt;code&gt;resultCode&lt;\\\/code&gt;, check the refusal reason and, if possible, modify your request.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;62a63373c5179345407733f2fca597c2&quot;:&quot;&lt;h2 id=\\&quot;testing-your-integration\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to test your integration. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt; &lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. \\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide#mobile-in-app-online-payments-integration\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt;, and submit the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Load Drop-in from one of our live environments and set the &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;dropInComponent.environment&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to match your live endpoints:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;environment&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveEurope&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveAustralia&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;US&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveUnitedStates&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;0d1bfac4b394d836e9bfe04292e0875e&quot;:&quot;&lt;h2 id=\\&quot;see-also\\&quot;&gt;See also&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;see-also-links output-inline\\&quot; id=\\&quot;see-also92994\\&quot;&gt;\\n&lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot;\\n                        target=\\&quot;_blank\\&quot;\\n                         class=\\&quot;external\\&quot;&gt;\\n                    Adyen iOS Reference\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-ios\\&quot;\\n                        target=\\&quot;_blank\\&quot;\\n                         class=\\&quot;external\\&quot;&gt;\\n                    Adyen iOS on GitHub\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    Tokenization\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/div&gt;\\n&quot;,&quot;68880e5c16a9b216bc7599de7deb9c80&quot;:&quot;&lt;h2 id=\\&quot;next-steps\\&quot;&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps79302\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Set up notifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Receive confirmation when a payment is authorised or fails.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods#add-payment-methods-to-your-account\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Payment modifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;ec8fd73cf016814a90ad118d03934f44&quot;:&quot;&lt;h2&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Drop-in integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a rel=\\&quot;lightbox\\&quot; href=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/ios\\\/4-9-0\\\/drop-in\\\/02.how-it-works\\\/drop-in-flow.jpg\\&quot; src=\\&quot;\\&quot;&gt;\\n  &lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/ios\\\/4-9-0\\\/drop-in\\\/02.how-it-works\\\/drop-in-flow.jpg\\&quot; \\\/&gt;\\n&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, submit a request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#add\\&quot;&gt;Create an instance of Drop-in&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;submit a payment request&lt;\\\/a&gt; with the data returned by Drop-in.&lt;\\\/li&gt;\\n&lt;li&gt;Determine from the response if you need to &lt;a href=\\&quot;#additional-action\\&quot;&gt;perform additional actions on your client app&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;submit additional payment details&lt;\\\/a&gt; with the data returned by Drop-in.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps13970\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;h6 class=\\&quot;next-steps__title\\&quot;&gt;Payment server&lt;\\\/h6&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#add\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;h6 class=\\&quot;next-steps__title\\&quot;&gt;Client  app&lt;\\\/h6&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;h6 class=\\&quot;next-steps__title\\&quot;&gt;Webhook server&lt;\\\/h6&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;524adaa96a429f56bd36edd91b35e0fa&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that you can add payment methods that require additional actions.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;To see if a specific payment method requires an additional action, go to the &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;To handle the action:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;dropInComponent.handle(action)&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to trigger Drop-in to perform additional actions.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;let action = try JSONDecoder().decode(Action.self, from: actionData)\\ndropInComponent.handle(action)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Drop-in performs additional actions in your app, depending on the &lt;code&gt;action.type&lt;\\\/code&gt;. Your next steps depend on the type of action that Drop-in performs.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;The action type determines your next step:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt; (&lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;redirect&lt;\\\/strong&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt; (&lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2&lt;\\\/strong&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt; (&lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt; (&lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt; (&lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt; (&lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;)&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a id=\\&quot;redirect-component\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, Drop-in redirects your shopper to another website to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper returns to your app, inform Drop-in. To do this, implement the following in your &lt;code&gt;UIApplicationDelegate&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey: Any] = [:]) -&amp;gt; Bool {\\nRedirectComponent.applicationDidOpen(from: url)\\nreturn true\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;After Drop-in completes the additional action, Drop-in invokes the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss Drop-in&lt;\\\/a&gt; immediately or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If an error occurs in the app, Drop-in invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method. Dismiss Drop-in&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;The actions you can handle for 3D Secure 2 authentication depend on the version of Checkout API that you are using.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabkZV6l47669\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;47669&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;v67 or later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;For Checkout API v67 or later:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;When the response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2&amp;lt;\\\\\\\/strong&amp;gt;, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;After Drop-in completes the additional action, it invokes the &amp;lt;code&amp;gt;didProvide&amp;lt;\\\\\\\/code&amp;gt; method.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;didProvide with action data&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;swift\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Get the &amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;didProvide&amp;lt;\\\\\\\/code&amp;gt; method.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#dismiss\\\\&amp;quot;&amp;gt;Dismiss &amp;lt;code&amp;gt;dropInComponent&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/a&amp;gt; now or after the following step.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Pass the contents of &amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt; to your server.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67_or_later_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;v66 or earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;For Checkout API v66 or earlier, you can get two action types for 3D Secure 2 authentication:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;When the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2Fingerprint&amp;lt;\\\\\\\/strong&amp;gt;, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;When the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2Challenge&amp;lt;\\\\\\\/strong&amp;gt;, the payment qualifies for 3D Secure 2 and it goes through the challenge flow.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;After Drop-in completes the additional action, it invokes the &amp;lt;code&amp;gt;didProvide&amp;lt;\\\\\\\/code&amp;gt; method.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;didProvide with action data&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;swift\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Get the &amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;didProvide&amp;lt;\\\\\\\/code&amp;gt; method.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#dismiss\\\\&amp;quot;&amp;gt;Dismiss &amp;lt;code&amp;gt;dropInComponent&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/a&amp;gt; now or after the following step.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Pass the contents of &amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt; to your server.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66_or_earlier_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment. &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to show the UI for QR code payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Drop-in polls the payment status and, if completed, calls the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss &lt;code&gt;dropInComponent&lt;\\\/code&gt;&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use the payment method&#039;s app to complete the payment. &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; triggers the app switch from your app to the payment method&#039;s app, if installed in the shopper&#039;s device.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper returns to your app, Drop-in invokes the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss &lt;code&gt;dropInComponent&lt;\\\/code&gt;&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment. &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to present UI for voucher. The shopper shares, saves the voucher as an image or, in some cases, adds the voucher to Apple Wallet.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper completes the flow, Drop-in invokes the &lt;code&gt;didComplete&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss &lt;code&gt;dropInComponent&lt;\\\/code&gt;&lt;\\\/a&gt;. The payment flow in your app is complete.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;After the shopper pays, or the voucher expires, your webhook server gets the &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook to update the payment status&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to show the await UI. The shopper continues payment process outside of your app. &lt;br&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Drop-in polls the payment status and, if completed, calls the &lt;code&gt;didProvide&lt;\\\/code&gt; the &lt;code&gt;didProvide&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss &lt;code&gt;dropInComponent&lt;\\\/code&gt;&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Handle the redirect result&lt;\\\/h3&gt;\\n&lt;p&gt;If the &lt;code&gt;Action&lt;\\\/code&gt; class returns &lt;code&gt;.redirect&lt;\\\/code&gt;, the shopper is redirected to an external site or to another application to complete the payment. You then need to inform Drop-in when the shopper returns to your app. To do this, implement the following in your &lt;code&gt;UIApplicationDelegate&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey: Any] = [:]) -&amp;gt; Bool {\\n    RedirectComponent.applicationDidOpen(from: url)\\n    return true\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;&quot;,&quot;447742a57adb89e8f10c5a9f67af12f1&quot;:&quot;&lt;h2 id=\\&quot;testing-your-integration\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to test your integration. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt; &lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. \\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide#mobile-in-app-online-payments-integration\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt;, and submit the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Load Drop-in from one of our live environments and set the &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;dropInComponent.environment&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to match your live endpoints:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;environment&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveEurope&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveAustralia&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;US&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveUnitedStates&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Asia Pacific and South East&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveApse&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;3dab84235781457007af74c4ee02da8d&quot;:&quot;&lt;h2 id=\\&quot;see-also\\&quot;&gt;See also&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;see-also-links output-inline\\&quot; id=\\&quot;see-also15345\\&quot;&gt;\\n&lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot;\\n                        target=\\&quot;_blank\\&quot;\\n                         class=\\&quot;external\\&quot;&gt;\\n                    Adyen iOS Reference\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-ios\\&quot;\\n                        target=\\&quot;_blank\\&quot;\\n                         class=\\&quot;external\\&quot;&gt;\\n                    Adyen iOS on GitHub\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    Tokenization\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/div&gt;\\n&quot;,&quot;f39810c9a7cad5deec5c7d3563b2185f&quot;:&quot;&lt;h2 id=\\&quot;next-steps\\&quot;&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps43801\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Set up notifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Receive confirmation when a payment is authorised or fails.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods#add-payment-methods-to-your-account\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Payment modifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;aef4fd86d6d420165d0c082b7ab0c7f8&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Drop-in to your payment form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Next, use Drop-in to show the available payment methods and to collect payment details from your shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Decode the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; response with the &lt;code&gt;PaymentMethods&lt;\\\/code&gt; structure.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Decode the \\\/paymentMethods response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;let paymentMethods = try JSONDecoder().decode(PaymentMethods.self, from: paymentMethodsResponse)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create an instance of &lt;code&gt;APIContext&lt;\\\/code&gt; that contains to following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Client key&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Authenticates requests from your payment environment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Environment setting&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;a href=\\&quot;#test-and-go-live\\&quot;&gt;environment value&lt;\\\/a&gt; that matches the endpoint that your server uses. Use &lt;strong&gt;Environment.test&lt;\\\/strong&gt; for your test environment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create the APIContext&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ Set the client key and environment in an instance of APIContext.\\\\nlet apiContext = APIContext(clientKey: clientKey, environment: Environment.test) \\\\\\\/\\\\\\\/ Set the environment to a live one when going live.\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create an instance of &lt;code&gt;AdyenContext&lt;\\\/code&gt; that contains the following: &lt;span id=\\&quot;configure\\&quot;&gt;&lt;\\\/span&gt;&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;API context&lt;\\\/td&gt;\\n&lt;td&gt;Your instance of &lt;code&gt;APIContext&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Payment information&lt;\\\/td&gt;\\n&lt;td&gt;A &lt;code&gt;Payment&lt;\\\/code&gt; object with the payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create the AdyenContext&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ Create the amount with the value in minor units and the currency code.\\\\nlet amount = Amount(value: 1000, currencyCode: \\\\\\&quot;EUR\\\\\\&quot;)\\\\n\\\\\\\/\\\\\\\/ Create the payment object with the amount and country code.\\\\nlet payment = Payment(amount: amount, countryCode: \\\\\\&quot;NL\\\\\\&quot;)\\\\n\\\\\\\/\\\\\\\/ Create an instance of AdyenContext, passing the instance of APIContext, and payment object.\\\\nlet adyenContext = AdyenContext(apiContext: apiContext, payment:payment)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a Drop-in configuration object (&lt;code&gt;DropInComponent.Configuration&lt;\\\/code&gt;). You can add the following: &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type of configuration&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Payment method configuration&lt;\\\/td&gt;\\n&lt;td&gt;Some &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment methods&lt;\\\/a&gt; require additional configuration or have optional configuration.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Optional configuration&lt;\\\/td&gt;\\n&lt;td&gt;You can add &lt;a href=\\&quot;#optional-configuration\\&quot;&gt;optional configuration&lt;\\\/a&gt; for Drop-in.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The following example shows an optional configuration for cards.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Configure Drop-in&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;let dropInConfiguration = DropInComponent.Configuration()\\\\n\\\\\\\/\\\\\\\/ Some payment methods have additional required or optional configuration.\\\\n\\\\\\\/\\\\\\\/ For example, an optional configuration to show the cardholder name field for cards.\\\\ndropInConfiguration.card.showsHolderNameField = true\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Initialize Drop-in (&lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;DropInComponent&lt;\\\/code&gt;\\n&lt;\\\/a&gt;). &lt;a id=\\&quot;initialize\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethods&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full, decoded  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; response.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;context&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;AdyenContext&lt;\\\/code&gt; that you created.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsConfiguration&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;For some &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment methods&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;td&gt;Configuration for specific payment methods.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Initialize Drop-in&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;swift&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;let dropInComponent = DropInComponent(paymentMethods: paymentMethods, context: adyenContext, configuration: dropInConfiguration)\\\\n\\\\\\\/\\\\\\\/ Keep the instance of Drop-in so that it doesn&#039;t get destroyed after the function is executed.\\\\nself.dropInComponent = dropInComponent\\\\n\\\\\\\/\\\\\\\/ Set self as the delegate.\\\\ndropInComponent.delegate = self\\\\n\\\\\\\/\\\\\\\/ If you support gift cards, set self as the partial payment delegate.\\\\ndropInComponent.partialPaymentDelegate = self&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;After the shopper selects a payment method and provides payment details, Drop-in invokes the &lt;code&gt;didSubmit&lt;\\\/code&gt; method. Get the contents of &lt;code&gt;data.paymentMethod&lt;\\\/code&gt; and pass this to your server.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func didSubmit(_ data: PaymentComponentData, for paymentMethod: PaymentMethod, from component: DropInComponent)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;p&gt;If an error occurs on the app, Drop-in invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method. Dismiss Drop-in&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func didFail(with error: Error, from component: DropInComponent)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;p&gt;If the shopper decides not to continue with the selected payment method, Drop-in invokes the &lt;code&gt;didCancel&lt;\\\/code&gt; method. You can use &lt;code&gt;didCancel&lt;\\\/code&gt; to track the state of the payment.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func didCancel(component: PaymentComponent, from dropInComponent: DropInComponent)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div class=\\&quot;sc-notice info\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For more information on iOS Drop-in classes, see our &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;reference documentation&lt;\\\/a&gt; page.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&quot;,&quot;edba3276f6b70666fc4a2d5443c54f5b&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full data from &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request specifying:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0of the payment and\\u00a0its &lt;code&gt;value&lt;\\\/code&gt;\\u00a0in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;data.paymentMethod&lt;\\\/code&gt; from the &lt;code&gt;didSubmit&lt;\\\/code&gt; method from your client app.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL the shopper should be taken back to after a redirection. Use the custom URL for your app, for example, &lt;code&gt;my-app:\\\/\\\/adyen&lt;\\\/code&gt;, to take the shopper back to your app after they complete the payment outside of your app. For more information on setting a custom URL scheme, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;. The URL can contain a maximum of 1024 characters. You can also include your own additional query parameters, for example, shopper ID or order reference number.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;checkoutAttemptId&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt; generated by Drop-in to track the user payment journey. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;1e56b56129c68c71f81a5947950e5911&quot;:&quot;&lt;h2&gt;Optional configuration&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You can set additional configuration on the &lt;a href=\\&quot;#configure\\&quot;&gt;Drop-in configuration&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperInformation&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Prefilled shopper information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;localizationParameters&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#localization\\&quot;&gt;Localization&lt;\\\/a&gt; parameters, like custom placeholders in other languages.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;style&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Custom styling of the UI.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;cf340e32a481631aef5794011eb0840e&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;To handle the action:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full &lt;code&gt;action&lt;\\\/code&gt; object from your server to your client app.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Call &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;dropInComponent.handle(action)&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to trigger Drop-in to handle the additional action.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Use Drop-in to handle the additional action&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;let action = try JSONDecoder().decode(Action.self, from: actionData)\\\\ndropInComponent.handle(action)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Drop-in performs the additional action in your app.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;You handle the payment data, depending on the value of &lt;code&gt;action.type&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a id=\\&quot;redirect-component\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, Drop-in redirects your shopper to another website to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper returns to your app, inform Drop-in. To do this, implement the following in your &lt;code&gt;UIApplicationDelegate&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey: Any] = [:]) -&amp;gt; Bool {\\nRedirectComponent.applicationDidOpen(from: url)\\nreturn true\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;After Drop-in completes the additional action, Drop-in invokes the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent, in dropInComponent: AnyDropInComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;If an error occurs in the app, Drop-in invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method. Dismiss Drop-in&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent, in dropInComponent: AnyDropInComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss Drop-in&lt;\\\/a&gt; immediately or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;If the shopper fails to return to your app, you do not get the additional data to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Drop-in handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;After Drop-in completes the additional action, it invokes the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent, in dropInComponent: AnyDropInComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;If an error occurs in the app, Drop-in invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method. Dismiss Drop-in&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent, in dropInComponent: AnyDropInComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss &lt;code&gt;dropInComponent&lt;\\\/code&gt;&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to show the UI for QR code payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Drop-in polls the payment status and, if completed, calls the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent, in dropInComponent: AnyDropInComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;If an error occurs in the app, Drop-in invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method. Dismiss Drop-in&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent, in dropInComponent: AnyDropInComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss &lt;code&gt;dropInComponent&lt;\\\/code&gt;&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use the payment method&#039;s app to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; triggers the app switch from your app to the payment method&#039;s app, if installed in the shopper&#039;s device.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper returns to your app, Drop-in invokes the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent, in dropInComponent: AnyDropInComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;If an error occurs in the app, Drop-in invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method. Dismiss Drop-in&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent, in dropInComponent: AnyDropInComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss &lt;code&gt;dropInComponent&lt;\\\/code&gt;&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to show the UI for the voucher.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper shares, saves the voucher as an image or, in some cases, adds the voucher to Apple Wallet.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper completes the flow, Drop-in invokes the &lt;code&gt;didComplete&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent, in dropInComponent: AnyDropInComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;If an error occurs in the app, Drop-in invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method. Dismiss Drop-in&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent, in dropInComponent: AnyDropInComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss &lt;code&gt;dropInComponent&lt;\\\/code&gt;&lt;\\\/a&gt;. The payment flow in your app is complete.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;After the shopper pays, or the voucher expires, your webhook server gets the &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook to update the payment status&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to show the await UI. The shopper continues payment process outside of your app.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Drop-in polls the payment status and, if completed, calls the &lt;code&gt;didProvide&lt;\\\/code&gt; the &lt;code&gt;didProvide&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent, in dropInComponent: AnyDropInComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;If an error occurs in the app, Drop-in invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method. Dismiss Drop-in&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent, in dropInComponent: AnyDropInComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss &lt;code&gt;dropInComponent&lt;\\\/code&gt;&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;d50e2a5621f075f443fbe9e982d8113e&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full data from &lt;code&gt;didSubmit&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0of the payment and\\u00a0its &lt;code&gt;value&lt;\\\/code&gt;\\u00a0in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The complete &lt;code&gt;data.paymentMethod&lt;\\\/code&gt; object from the &lt;code&gt;didSubmit&lt;\\\/code&gt; method from your client app. It includes the payment method details and other required information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The object that includes information collected by Drop-in to track the user&#039;s payment journey, including information like the &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt;. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL the shopper should be taken back to after a redirection. Use the custom URL for your app, for example, &lt;code&gt;my-app:\\\/\\\/adyen&lt;\\\/code&gt;, to take the shopper back to your app after they complete the payment outside of your app. For more information on setting a custom URL scheme, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;. The URL can contain a maximum of 1024 characters. You can also include your own additional query parameters, for example, shopper ID or order reference number.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;}},&quot;components&quot;:{&quot;label&quot;:&quot;Components&quot;,&quot;description&quot;:&quot;Use our customizable UI components&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;iOS Components&lt;\\\/h2&gt;\\n&lt;p&gt;Render individual payment methods anywhere in your app.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=ios%20components\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Low development time to integrate each payment method component&lt;\\\/li&gt;\\n&lt;li&gt;UI styling customization for each payment method&lt;\\\/li&gt;\\n&lt;li&gt;Flexibility to add payment method components with configuration for each&lt;\\\/li&gt;\\n&lt;li&gt;3D Secure 2 support using the 3D Secure 2 Component&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;visual_images&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/ios\\\/components\\\/visual\\\/ios-components.svg&quot;,&quot;external_content&quot;:&quot;&lt;h3&gt;Adyen iOS on GitHub&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-ios\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View the Adyen iOS repository&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-ios\\\/tree\\\/develop\\\/Demo\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View our example integration&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.19.1\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View the code explorer on GitHub Pages&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;external_icon&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/ios\\\/github\\\/github-mark.png&quot;,&quot;versions&quot;:{&quot;version-5.23.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;8e0a4a9dfcaa4c481059a02da2a7b265&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.23.1&quot;}},&quot;version-5.23.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;8e0a4a9dfcaa4c481059a02da2a7b265&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.23.0&quot;}},&quot;version-5.22.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;8e0a4a9dfcaa4c481059a02da2a7b265&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.22.2&quot;}},&quot;version-5.22.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;8e0a4a9dfcaa4c481059a02da2a7b265&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.22.1&quot;}},&quot;version-5.22.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;8e0a4a9dfcaa4c481059a02da2a7b265&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.22.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-5.21.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.21.1&quot;}},&quot;version-5.21.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.21.0&quot;}},&quot;version-5.20.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.20.2&quot;}},&quot;version-5.20.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.20.1&quot;}},&quot;version-5.20.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.20.0&quot;}},&quot;version-5.19.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.19.2&quot;}},&quot;version-5.19.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.19.1&quot;}},&quot;version-5.19.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.19.0&quot;}},&quot;version-5.18.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.18.1&quot;}},&quot;version-5.18.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.18.0&quot;}},&quot;version-5.17.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.17.0&quot;}},&quot;version-5.16.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.0&quot;}},&quot;version-5.15.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.15.0&quot;}},&quot;version-5.14.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;71d1442d59b11ee59b767c0f165ab850&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.14.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-5.13.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.13.0&quot;}},&quot;version-5.12.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.12.0&quot;}},&quot;version-5.11.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.11.0&quot;}},&quot;version-5.10.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.10.0&quot;}},&quot;version-5.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.9.0&quot;}},&quot;version-5.8.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.8.0&quot;}},&quot;version-5.7.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.7.1&quot;}},&quot;version-5.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.7.0&quot;}},&quot;version-5.6.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.6.0&quot;}},&quot;version-5.5.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.5.0&quot;}},&quot;version-5.4.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.4.1&quot;}},&quot;version-5.4.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.4.0&quot;}},&quot;version-5.3.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.3.0&quot;}},&quot;version-5.2.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.2.0&quot;}},&quot;version-5.1.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.1.0&quot;}},&quot;version-5.0.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_components&quot;:{&quot;$ref&quot;:&quot;ef57d03035676f7f33f6124ef5a74495&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;45fe7f3af7cb75443740822832c95759&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;247af8c5facfdcf513f339da598ddef4&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;optional_configuration&quot;:{&quot;$ref&quot;:&quot;98ffc58241599ced7811e31955ab5334&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-4.16.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.16.1&quot;}},&quot;version-4.14.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.14.0&quot;}},&quot;version-4.13.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.0&quot;}},&quot;version-4.12.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.12.1&quot;}},&quot;version-4.12.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.12.0&quot;}},&quot;version-4.11.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.11.2&quot;}},&quot;version-4.11.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.11.1&quot;}},&quot;version-4.11.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.11.0&quot;}},&quot;version-4.10.5&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.5&quot;}},&quot;version-4.10.4&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;5700215a00daf5dff11fc57fbf71d727&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;67dd9d9ded720f841d237ca19d949e7f&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.4&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-4.10.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;dbeadf96d9419a760b705fe7aac86714&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;083e7c91f5854f1298cf680d2cdcb83d&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;09a7486688f30b3ecbd67ed41e234b66&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;046fc72cbb05a3c5d5a1222df0fc5553&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;1871400d2f4fe58f21f5d0e9b09dabc9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.3&quot;}},&quot;version-4.10.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;dbeadf96d9419a760b705fe7aac86714&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;083e7c91f5854f1298cf680d2cdcb83d&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;09a7486688f30b3ecbd67ed41e234b66&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;046fc72cbb05a3c5d5a1222df0fc5553&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;1871400d2f4fe58f21f5d0e9b09dabc9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.2&quot;}},&quot;version-4.10.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;dbeadf96d9419a760b705fe7aac86714&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;083e7c91f5854f1298cf680d2cdcb83d&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;09a7486688f30b3ecbd67ed41e234b66&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;046fc72cbb05a3c5d5a1222df0fc5553&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;1871400d2f4fe58f21f5d0e9b09dabc9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.1&quot;}},&quot;version-4.10.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;dbeadf96d9419a760b705fe7aac86714&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;083e7c91f5854f1298cf680d2cdcb83d&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;09a7486688f30b3ecbd67ed41e234b66&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;046fc72cbb05a3c5d5a1222df0fc5553&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;1871400d2f4fe58f21f5d0e9b09dabc9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.0&quot;}},&quot;version-4.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;3ac353803e513aab5db6318b69f55278&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;dbeadf96d9419a760b705fe7aac86714&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;083e7c91f5854f1298cf680d2cdcb83d&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;},&quot;add_drop_in&quot;:{&quot;$ref&quot;:&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;},&quot;localization&quot;:{&quot;$ref&quot;:&quot;20128f4ad6241dcd4d955e618a1beccb&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a5dbc5a7e38da8304185a9b07140878a&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;e3584330742ebde18c5e39d2dbbad44f&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;dismiss-component&quot;:{&quot;$ref&quot;:&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;09a7486688f30b3ecbd67ed41e234b66&quot;},&quot;see_also&quot;:{&quot;$ref&quot;:&quot;046fc72cbb05a3c5d5a1222df0fc5553&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;1871400d2f4fe58f21f5d0e9b09dabc9&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;4.9.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;3ac353803e513aab5db6318b69f55278&quot;:&quot;&lt;p&gt;Components are our pre-built UI solution for accepting payments in your app. Each Component renders a payment method you can render anywhere in your app. For the Advanced flow, your server makes API requests to the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt;,  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt;, and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; endpoints.&lt;\\\/p&gt;&quot;,&quot;dbeadf96d9419a760b705fe7aac86714&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you begin to integrate, make sure you have followed the &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen guide&lt;\\\/a&gt; to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Get an overview of the steps needed to accept live payments.&lt;\\\/li&gt;\\n&lt;li&gt;Create your test account.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After you have created your test account:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt; to know the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Install the Adyen iOS client-side library&lt;\\\/h3&gt;\\n&lt;p&gt;Choose how you want to install the Adyen iOS client-side library:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabweP2Z19117\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;19117&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Swift Package Manager&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;To install iOS Components using Swift Package Manager, &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/xcode\\\\\\\/adding_package_dependencies_to_your_app\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;follow the Apple guide&amp;lt;\\\\\\\/a&amp;gt; and specify:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;The repository URL as &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ios&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The version to be at least &amp;lt;strong&amp;gt;3.8.0&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;swift_package_manager_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;CocoaPods&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;To install iOS Components from CocoaPods:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;Add &amp;lt;code&amp;gt;pod &amp;#039;Adyen&amp;#039;&amp;lt;\\\\\\\/code&amp;gt; to your &amp;lt;code&amp;gt;Podfile&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;Run &amp;lt;code&amp;gt;pod install&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;cocoapods_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Carthage&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;To install iOS Components from Carthage:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;Add &amp;lt;code&amp;gt;github \\\\&amp;quot;adyen\\\\\\\/adyen-ios\\\\&amp;quot;&amp;lt;\\\\\\\/code&amp;gt; to your &amp;lt;code&amp;gt;Cartfile&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;Run &amp;lt;code&amp;gt;carthage update&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;Link the framework with your target as described in &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Carthage\\\\\\\/Carthage#adding-frameworks-to-an-application\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Carthage Readme&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;carthage_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3 id=\\&quot;get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/h3&gt;\\n&lt;p&gt;You need a &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client key&lt;\\\/a&gt;, a public key linked to your API credential, that the iOS Components use for client-side authentication.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Log in to your &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Go to &lt;strong&gt;Developers&lt;\\\/strong&gt; &amp;gt; &lt;strong&gt;API credentials&lt;\\\/strong&gt;, and select the API credential for your integration, for example &lt;strong&gt;ws@Company.[YourCompanyAccount]&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Under &lt;strong&gt;Authentication&lt;\\\/strong&gt;, select &lt;strong&gt;Generate New Client Key&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Select &lt;strong&gt;Save&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;083e7c91f5854f1298cf680d2cdcb83d&quot;:&quot;&lt;h2&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Components integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, submit a request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#add\\&quot;&gt;Add Components&lt;\\\/a&gt; to your payments form.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;submit a payment request&lt;\\\/a&gt; with the data returned by the Component.&lt;\\\/li&gt;\\n&lt;li&gt;Determine from the response if you need to perform additional actions on your client app, such as to &lt;a href=\\&quot;#additional-action\\&quot;&gt;redirect the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;verify the payment result&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps14538\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#add\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabCHPSg14040\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;14040&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;c2afc3ffa4862c21f4a204887e004ec1&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.&lt;\\\/p&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/#\\\/CheckoutService\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;We use the optional parameters to tailor the list of available payment methods to your shopper.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The platform where the payment is taking place. Use &lt;strong&gt;iOS&lt;\\\/strong&gt;. Adyen returns only the payment methods available for iOS.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. Adyen returns only the payment methods available in this country. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. By default, the shopper locale is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. If this is provided, the payment method names are translated to the specified language.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The following example shows how to get the available payment methods for a shopper in the &lt;strong&gt;Netherlands&lt;\\\/strong&gt;, for a payment of &lt;strong&gt;EUR&amp;nbsp;10&lt;\\\/strong&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;advanced-flow-post-payment-methods-request&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Android&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available &lt;code&gt;paymentMethods&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;\\\/paymentMethods response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;Cards\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;scheme\\\\\\&quot;\\\\n      ...\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    },\\\\n    ...\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Pass the response to your client app. You then use this in the next step to present which payment methods are available to the shopper.&lt;\\\/p&gt;&quot;,&quot;a8e192860d7c67ec18fc5b51e2c538c3&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Components to your payment form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Next, use the Component to collect payment details from your shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Decode the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response with the &lt;code&gt;PaymentMethods&lt;\\\/code&gt; structure. Find the payment method object for the Component that you want to instantiate. For example, for a card payment, you need to find the &lt;code&gt;CardPaymentMethod&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;let paymentMethods = try JSONDecoder().decode(PaymentMethods.self, from: paymentMethodsResponse)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create an instance of &lt;code&gt;APIContext&lt;\\\/code&gt; with the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client key&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/environment\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;live environments&lt;\\\/a&gt;.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;APIContext initialization&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ When you are ready to go live, change environment to Environment.live\\\\n\\\\\\\/\\\\\\\/ You can also use other environment values described in https:\\\\\\\/\\\\\\\/adyen.github.io\\\\\\\/adyen-ios\\\\\\\/Docs\\\\\\\/Structs\\\\\\\/Environment.html\\\\nlet apiContext = APIContext(environment: Environment.test, clientKey: clientKey)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Initialize the payment method Component. To do this, you need the decoded payment method object, and any other additional required parameters for the specific payment method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div class=\\&quot;sc-notice info\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;The steps for adding Components are the same for each payment method, however, some may require additional configuration. For information on the required configuration, refer to the &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/div&gt;\\n&lt;p&gt;For example, to initialize the &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;CardComponent&lt;\\\/a&gt;:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;You need to provide your &lt;a href=\\&quot;#get-your-client-key\\&quot;&gt;client key&lt;\\\/a&gt; to enable the Card form. iOS Components versions before 3.7.0 use &lt;code&gt;publicKey&lt;\\\/code&gt; instead. Find out how to &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\\/migrate-from-origin-key-to-client-key\\&quot;&gt;migrate from using &lt;code&gt;publicKey&lt;\\\/code&gt; to &lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;You can show the amount a shopper has to pay on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button. To do this, include additional payment configuration for the Component, passing the &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;currency&lt;\\\/a&gt; and the amount that the shopper has to pay.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;\\\/\\\/ Replace CardComponent with the payment method Component that you want to add.\\n\\n\\\/\\\/ Add additional required parameters if needed and inject the instance of `APIContext`.\\nlet cardComponent = CardComponent(paymentMethod: cardPaymentMethod, apiContext: apiContext)\\ncardComponent.delegate = self\\n\\n\\\/\\\/ Keep the component instance to avoid it being destroyed after the function is executed.\\nself.cardComponent = cardComponent\\n\\n\\\/\\\/ Optional. In this example, the Pay button will show 10 EUR.\\ncardComponent.payment = Payment(amount: Amount(value: 1000,\\n                                            currencyCode: \\&quot;EUR\\&quot;))\\npresent(cardComponent.viewController, animated: true)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After the shopper provides payment details, the Component invokes the &lt;code&gt;didSubmit&lt;\\\/code&gt; method from the &lt;code&gt;PaymentComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;4\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the contents of &lt;code&gt;data.paymentMethod&lt;\\\/code&gt; and pass this to your server. Dismiss the Component immediately, or wait until you have submitted the details to your server.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func didSubmit(_ data: PaymentComponentData, from component: PaymentComponent)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;p&gt;In case an error occurs on the app, the Component invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method from the &lt;code&gt;PaymentComponentDelegate&lt;\\\/code&gt;. Dismiss the Component&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func didFail(with error: Error, from component: PaymentComponent)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;20128f4ad6241dcd4d955e618a1beccb&quot;:&quot;&lt;h3 id=\\&quot;localization\\&quot;&gt;Localization&lt;\\\/h3&gt;\\n&lt;p&gt;iOS Components support the languages listed &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-ios\\\/tree\\\/master\\\/Adyen\\\/Assets\\&quot;&gt;here&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To customize a localization, add a new &lt;code&gt;localizable.strings&lt;\\\/code&gt; file for the language that you need. You can also override &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-ios\\\/blob\\\/master\\\/Adyen\\\/Assets\\\/en-US.lproj\\\/Localizable.strings\\&quot;&gt;existing strings&lt;\\\/a&gt; by using the same keys.&lt;\\\/p&gt;\\n&lt;p&gt;For example, to override the cardholder name field title, set the following on your &lt;code&gt;localizable.strings&lt;\\\/code&gt; file:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;\\&quot;adyen.card.nameItem.title\\&quot; = \\&quot;Your cardholder name\\&quot;;&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;div class=\\&quot;sc-notice info\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For more information on iOS Components classes, see our &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot;&gt;reference documentation&lt;\\\/a&gt; page.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/div&gt;\\n&lt;p&gt;To find localized strings, the library first checks your custom &lt;code&gt;localizable.strings&lt;\\\/code&gt; file, and then the default Adyen file.&lt;\\\/p&gt;\\n&lt;p&gt;You can use &lt;code&gt;LocalizationParameters&lt;\\\/code&gt; to customize the localization file name, bundle, or the separator for translation strings.&lt;\\\/p&gt;\\n&lt;p&gt;For example, if you store translations in &lt;code&gt;MyLocalizable.strings&lt;\\\/code&gt; files in the shared bundle &lt;code&gt;CommonBundle&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;let localizationParameters = LocalizationParameters(bundle: commonBundle, tableName: \\&quot;MyLocalizable\\&quot;)\\ncardComponentConfiguration.localizationParameters = localizationParameters&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&quot;,&quot;a5dbc5a7e38da8304185a9b07140878a&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full data from &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request specifying:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0of the payment and\\u00a0its &lt;code&gt;value&lt;\\\/code&gt;\\u00a0in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;data.paymentMethod&lt;\\\/code&gt; from the &lt;code&gt;didSubmit&lt;\\\/code&gt; method from your client app.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL the shopper should be taken back to after a redirection. Use the custom URL for your app, for example, &lt;code&gt;my-app:\\\/\\\/adyen&lt;\\\/code&gt;, to take the shopper back to your app after they complete the payment outside of your app. For more information on setting a custom URL scheme, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;. The URL can contain a maximum of 1024 characters. You can also include your own additional query parameters, for example, shopper ID or order reference number.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;e3584330742ebde18c5e39d2dbbad44f&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;To handle an additional action, the Component uses the &lt;code&gt;action&lt;\\\/code&gt; object from the previous step.&lt;\\\/p&gt;\\n&lt;p&gt;Use &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; and the &lt;code&gt;action&lt;\\\/code&gt; object from the API response to handle the action.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create and persist instance of &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;internal lazy var actionComponent: AdyenActionComponent = {\\n  let component = AdyenActionComponent(apiContext: apiContext)\\n  component.delegate = self\\n  component.presentationDelegate = self\\n  return component\\n}()&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use it to handle the action:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;let action = try JSONDecoder().decode(Action.self, from: actionData)\\nactionComponent.handle(action)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; performs additional actions on the client side.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;You handle the payment data, depending on the &lt;code&gt;action.type&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a id=\\&quot;redirect-component\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, the Component redirects your shopper to another website to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Make sure that you inform &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; when the shopper returns to your app. To do this, implement the following in your &lt;code&gt;UIApplicationDelegate&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey: Any] = [:]) -&amp;gt; Bool {\\nRedirectComponent.applicationDidOpen(from: url)\\nreturn true\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;After the Redirect Component under the hood of &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; completes the additional action, the Component invokes the &lt;code&gt;didProvide&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;. Get the contents of &lt;code&gt;data&lt;\\\/code&gt; and pass this to your server. &lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss the Component&lt;\\\/a&gt; immediately, or wait until you have submitted the details to your server.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func didProvide(_ data: ActionComponentData, from component: ActionComponent)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;p&gt;In case an error occurs on the app, the Component invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;. Dismiss the Component&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func didFail(with error: Error, from component: ActionComponent)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;The actions you can handle for 3D Secure 2 authentication depend on the version of Checkout API that you are using.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabZJcs661685\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;61685&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;v67 or later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;For Checkout API v67 or later:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;When the response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2&amp;lt;\\\\\\\/strong&amp;gt;, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;After the Component completes the additional action, it invokes the &amp;lt;code&amp;gt;didProvide&amp;lt;\\\\\\\/code&amp;gt; method from the &amp;lt;code&amp;gt;ActionComponentDelegate&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;didProvide with action data&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;swift\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Get the &amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;didProvide&amp;lt;\\\\\\\/code&amp;gt; method.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#dismiss\\\\&amp;quot;&amp;gt;Dismiss current component&amp;lt;\\\\\\\/a&amp;gt; now or after the following step.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Pass the contents of &amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt; to your server.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67_or_later_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;v66 or earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;For Checkout API v66 or earlier, you can get two action types for 3D Secure 2 authentication:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;When the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2Fingerprint&amp;lt;\\\\\\\/strong&amp;gt;, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;When the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2Challenge&amp;lt;\\\\\\\/strong&amp;gt;, the payment qualifies for 3D Secure 2 and it goes through the challenge flow.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;After the Component completes the additional action, it invokes the &amp;lt;code&amp;gt;didProvide&amp;lt;\\\\\\\/code&amp;gt; method from the &amp;lt;code&amp;gt;ActionComponentDelegate&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;didProvide with action data&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;swift\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Get the &amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt; from the &amp;lt;code&amp;gt;didProvide&amp;lt;\\\\\\\/code&amp;gt; method.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#dismiss\\\\&amp;quot;&amp;gt;Dismiss current component&amp;lt;\\\\\\\/a&amp;gt; now or after the following step.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Pass the contents of &amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt; to your server.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66_or_earlier_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment. &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to show the UI for QR code payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The Component polls the payment status and, if completed, calls the &lt;code&gt;didProvide&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss current component&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use the payment method&#039;s app to complete the payment. &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; triggers the app switch from your app to the payment method&#039;s app, if installed in the shopper&#039;s device.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper returns to your app, the Component invokes the &lt;code&gt;didProvide&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss current component&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment. &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to present UI for voucher. The shopper shares, saves the voucher as an image or, in some cases, adds the voucher to Apple Wallet.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper completes the flow, the Component invokes the &lt;code&gt;didComplete&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss current component&lt;\\\/a&gt;. The payment flow in your app is complete.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;After the shopper pays, or the voucher expires, your webhook server gets the &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook to update the payment status&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to show the await UI. The shopper continues payment process outside of your app. &lt;br&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The Component polls the payment status and, if completed, calls the &lt;code&gt;didProvide&lt;\\\/code&gt; the &lt;code&gt;didProvide&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss current component&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;redirect-component\\&quot;&gt;Redirect Component&lt;\\\/h3&gt;\\n&lt;p&gt;If the &lt;code&gt;action&lt;\\\/code&gt; class is &lt;strong&gt;.redirect&lt;\\\/strong&gt;, initialize the Redirect Component.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Make sure that you inform &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; when the shopper returns to your app. To do this, implement the following in your &lt;code&gt;UIApplicationDelegate&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey: Any] = [:]) -&amp;gt; Bool {\\nRedirectComponent.applicationDidOpen(from: url)\\nreturn true\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;After the Redirect Component under the hood of &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; completes the additional action, the Component invokes the &lt;code&gt;didProvide&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;. Get the contents of &lt;code&gt;data&lt;\\\/code&gt; and pass this to your server. &lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss the Component&lt;\\\/a&gt; immediately, or wait until you have submitted the details to your server.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func didProvide(_ data: ActionComponentData, from component: ActionComponent)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;p&gt;In case an error occurs on the app, the Component invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;. Dismiss the Component&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func didFail(with error: Error, from component: ActionComponent)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;e8497800251164596b4a099e37060eb1&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your app, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request including the full &lt;code&gt;data&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to send additional payment details&#039;\\&quot; :id=\\&quot;&#039;details-request-component&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{hint:object passed from your client app}STATE_DATA{\\\\\\\/hint}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nString xApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nClient client = new Client(xApiKey,Environment.TEST);\\\\nCheckout checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nPaymentsDetailsRequest paymentsDetailsRequest = STATE_DATA;\\\\nPaymentsResponse paymentsDetailsResponse = checkout.paymentsDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\n$params = STATE_DATA;\\\\n$result = $service-&amp;gt;paymentsDetails($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed.\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from the client app, deserialized from JSON to a data structure.\\\\nvar paymentsDetailsRequest = STATE_DATA;\\\\nvar paymentsDetailsResponse = checkout.PaymentDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;[ADYEN_API_KEY]&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\ncheckout.paymentsDetails(STATE_DATA).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;[ADYEN_API_KEY]\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nreq := STATE_DATA;\\\\nres, httpRes, err := client.Checkout.PaymentsDetails(&amp;amp;req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresult = adyen.checkout.payments_details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresponse = adyen.checkout.payments.details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client\\\\n   puts response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode to your client\\\\n   puts response.body[:resultCode]\\\\nend&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response from your server to your client app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;a34ef0df6620c2e732dfaeeeb00b11fd&quot;:&quot;&lt;h2 id=\\&quot;dismiss\\&quot;&gt;Dismiss the Component&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After you make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request to submit the payment data or a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request to send additional details, dismiss the Component to finalize the payment flow.&lt;\\\/p&gt;\\n&lt;p&gt;Call &lt;code&gt;finalizeIfNeeded&lt;\\\/code&gt; and do the following, depending on what the Component handled:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;&lt;\\\/th&gt;\\n&lt;th&gt;What to do&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Result code&lt;\\\/td&gt;\\n&lt;td&gt;If no further steps are required from the application, dismiss the Component.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Error&lt;\\\/td&gt;\\n&lt;td&gt;Dismiss the Component, and show an error message.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;Implement the following in your &lt;code&gt;currentComponent&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Implement finalizeIfNeeded to dismiss the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;currentComponent?.finalizeIfNeeded(with: isSuccessful) { [weak self] in\\\\n    guard let self else { return }\\\\n    myCheckoutViewController.dismiss(animated: true) { [weak self] in\\\\n        \\\\\\\/\\\\\\\/ Continue the flow.\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After the Component finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;&lt;code&gt;resultCode&lt;\\\/code&gt;&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;9339cccb051868e8f60981049948cdeb&quot;:&quot;&lt;h2 id=\\&quot;error-handling\\&quot;&gt;Error handling&lt;\\\/h2&gt;\\n&lt;p&gt;In case you encounter errors in your integration, refer to the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/error-codes\\&quot;&gt;API error codes&lt;\\\/a&gt;: If you receive a non-HTTP 200 response, use the &lt;code&gt;errorCode&lt;\\\/code&gt; to troubleshoot and modify your request.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/refusal-reasons\\&quot;&gt;Payment refusals&lt;\\\/a&gt;: If you receive an HTTP 200 response with an &lt;strong&gt;Error&lt;\\\/strong&gt; or &lt;strong&gt;Refused&lt;\\\/strong&gt; &lt;code&gt;resultCode&lt;\\\/code&gt;, check the refusal reason and, if possible, modify your request.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;09a7486688f30b3ecbd67ed41e234b66&quot;:&quot;&lt;h2 id=\\&quot;testing-your-integration\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to test your integration. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt; &lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. \\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide#mobile-in-app-online-payments-integration\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt;, and submit the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Load Drop-in from one of our live environments and set the &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot;&gt;&lt;code&gt;dropInComponent.environment&lt;\\\/code&gt;&lt;\\\/a&gt; to match your live endpoints:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;environment&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveEurope&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveAustralia&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;US&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveUnitedStates&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;046fc72cbb05a3c5d5a1222df0fc5553&quot;:&quot;&lt;h2 id=\\&quot;see-also\\&quot;&gt;See also&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;see-also-links output-inline\\&quot; id=\\&quot;see-also50807\\&quot;&gt;\\n&lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot;\\n                        target=\\&quot;_blank\\&quot;\\n                         class=\\&quot;external\\&quot;&gt;\\n                    Adyen iOS Reference\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-ios\\&quot;\\n                        target=\\&quot;_blank\\&quot;\\n                         class=\\&quot;external\\&quot;&gt;\\n                    Adyen iOS on GitHub\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    Tokenization\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/div&gt;\\n&quot;,&quot;1871400d2f4fe58f21f5d0e9b09dabc9&quot;:&quot;&lt;h2 id=\\&quot;next-steps\\&quot;&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps19665\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Set up notifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Receive confirmation when a payment is authorised or fails.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods#add-payment-methods-to-your-account\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Payment modifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;5700215a00daf5dff11fc57fbf71d727&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you begin to integrate, make sure you have followed the &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen guide&lt;\\\/a&gt; to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Get an overview of the steps needed to accept live payments.&lt;\\\/li&gt;\\n&lt;li&gt;Create your test account.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After you have created your test account:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt; to know the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Install the Adyen iOS client-side library&lt;\\\/h3&gt;\\n&lt;p&gt;Choose how you want to install the Adyen iOS client-side library:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tab7cdP563683\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;63683&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Swift Package Manager&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;To install iOS Components using Swift Package Manager, &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/xcode\\\\\\\/adding_package_dependencies_to_your_app\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;follow the Apple guide&amp;lt;\\\\\\\/a&amp;gt; and specify:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;The repository URL as &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ios&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The version to be at least &amp;lt;strong&amp;gt;3.8.0&amp;lt;\\\\\\\/strong&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;swift_package_manager_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;CocoaPods&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;To install iOS Components from CocoaPods:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;Add &amp;lt;code&amp;gt;pod &amp;#039;Adyen&amp;#039;&amp;lt;\\\\\\\/code&amp;gt; to your &amp;lt;code&amp;gt;Podfile&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;Run &amp;lt;code&amp;gt;pod install&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;cocoapods_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Carthage&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;To install iOS Components from Carthage:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;Add &amp;lt;code&amp;gt;github \\\\&amp;quot;adyen\\\\\\\/adyen-ios\\\\&amp;quot;&amp;lt;\\\\\\\/code&amp;gt; to your &amp;lt;code&amp;gt;Cartfile&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;Run &amp;lt;code&amp;gt;carthage update&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;Link the framework with your target as described in &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Carthage\\\\\\\/Carthage#adding-frameworks-to-an-application\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Carthage Readme&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;carthage_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3 id=\\&quot;get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/h3&gt;\\n&lt;p&gt;You need a &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client key&lt;\\\/a&gt;, a public key linked to your API credential, that the iOS Components use for client-side authentication.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Log in to your &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Go to &lt;strong&gt;Developers&lt;\\\/strong&gt; &amp;gt; &lt;strong&gt;API credentials&lt;\\\/strong&gt;, and select the API credential for your integration, for example &lt;strong&gt;ws@Company.[YourCompanyAccount]&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Under &lt;strong&gt;Authentication&lt;\\\/strong&gt;, select &lt;strong&gt;Generate New Client Key&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Select &lt;strong&gt;Save&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;3f1803b42f7e64329a2f4c3965fd0774&quot;:&quot;&lt;h2&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Components integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, submit a request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#add\\&quot;&gt;Add Components&lt;\\\/a&gt; to your payments form.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;submit a payment request&lt;\\\/a&gt; with the data returned by the Component.&lt;\\\/li&gt;\\n&lt;li&gt;Determine from the response if you need to perform additional actions on your client app, such as to &lt;a href=\\&quot;#additional-action\\&quot;&gt;redirect the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;verify the payment result&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps75710\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#add\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;67dd9d9ded720f841d237ca19d949e7f&quot;:&quot;&lt;h2 id=\\&quot;testing-your-integration\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to test your integration. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt; &lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. \\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide#mobile-in-app-online-payments-integration\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt;, and submit the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Load the Components from one of our live environments and set the Component&#039;s &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;environment&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to match your live endpoints:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;environment&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveEurope&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveAustralia&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;US&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveUnitedStates&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Asia Pacific and South East&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;liveApse&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;56ad5c13f2941563eed21ed2d25f0df9&quot;:&quot;&lt;h2 id=\\&quot;see-also\\&quot;&gt;See also&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;see-also-links output-inline\\&quot; id=\\&quot;see-also17738\\&quot;&gt;\\n&lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot;\\n                        target=\\&quot;_blank\\&quot;\\n                         class=\\&quot;external\\&quot;&gt;\\n                    Adyen iOS Reference\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-ios\\&quot;\\n                        target=\\&quot;_blank\\&quot;\\n                         class=\\&quot;external\\&quot;&gt;\\n                    Adyen iOS on GitHub\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot;\\n                        target=\\&quot;_self\\&quot;\\n                        &gt;\\n                    Tokenization\\n                &lt;\\\/a&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/div&gt;\\n&quot;,&quot;15c40d1172bdc7efbbde3c94f3c4a73f&quot;:&quot;&lt;h2 id=\\&quot;next-steps\\&quot;&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps80929\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Set up notifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Receive confirmation when a payment is authorised or fails.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods#add-payment-methods-to-your-account\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Payment modifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;ef57d03035676f7f33f6124ef5a74495&quot;:&quot;&lt;h2 id=\\&quot;add\\&quot;&gt;Add Components to your payment form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the Component to collect payment details from your shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Decode the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; response with the &lt;code&gt;PaymentMethods&lt;\\\/code&gt; structure. Find the payment method object for the Component that you want to instantiate. For example, for a card payment, you need to find the &lt;code&gt;CardPaymentMethod&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Decode the payment methods response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;let paymentMethods = try JSONDecoder().decode(PaymentMethods.self, from: paymentMethodsResponse)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Get the payment method from the payment methods object. For example, the card payment method:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Get the payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;let cardPaymentMethod = paymentMethods.paymentMethod(ofType: CardPaymentMethod.self)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;2\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create an instance of &lt;code&gt;APIContext&lt;\\\/code&gt; that contains to following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Client key&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Authenticates requests from your payment environment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Environment setting&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;a href=\\&quot;#test-and-go-live\\&quot;&gt;environment value&lt;\\\/a&gt; that matches the endpoint that your server uses. Use &lt;strong&gt;Environment.test&lt;\\\/strong&gt; for your test environment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create the APIContext&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ Set the client key and environment in an instance of APIContext.\\\\nlet apiContext = APIContext(clientKey: clientKey, environment: Environment.test) \\\\\\\/\\\\\\\/ Set the environment to a live one when going live.\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create an instance of &lt;code&gt;AdyenContext&lt;\\\/code&gt; that contains the following: &lt;span id=\\&quot;configure\\&quot;&gt;&lt;\\\/span&gt;&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;API context&lt;\\\/td&gt;\\n&lt;td&gt;Your instance of &lt;code&gt;APIContext&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Payment information&lt;\\\/td&gt;\\n&lt;td&gt;A &lt;code&gt;Payment&lt;\\\/code&gt; object with the payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create the AdyenContext&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ Create the amount with the value in minor units and the currency code.\\\\nlet amount = Amount(value: 1000, currencyCode: \\\\\\&quot;EUR\\\\\\&quot;)\\\\n\\\\\\\/\\\\\\\/ Create the payment object with the amount and country code.\\\\nlet payment = Payment(amount: amount, countryCode: \\\\\\&quot;NL\\\\\\&quot;)\\\\n\\\\\\\/\\\\\\\/ Create an instance of AdyenContext, passing the instance of APIContext, and payment object.\\\\nlet adyenContext = AdyenContext(apiContext: apiContext, payment: payment)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;4\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a configuration object. You can add the following: &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type of configuration&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Payment method configuration&lt;\\\/td&gt;\\n&lt;td&gt;Some &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment methods&lt;\\\/a&gt; require additional configuration or have optional configuration.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Optional configuration&lt;\\\/td&gt;\\n&lt;td&gt;You can add &lt;a href=\\&quot;#optional-configuration\\&quot;&gt;optional configuration&lt;\\\/a&gt; to each component.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The following example shows creating a configuration object for the Card Component.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Configure the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;let cardConfiguration = CardComponent.Configuration()\\\\n\\\\\\\/\\\\\\\/ Some payment methods have additional required or optional configuration.\\\\n\\\\\\\/\\\\\\\/ For example, an optional configuration to show the cardholder name field for cards.\\\\ncardConfiguration.showsHolderNameField = true\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;5\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Initialize the Component class. &lt;a id=\\&quot;initialize\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full, decoded  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; response.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;context&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;AdyenContext&lt;\\\/code&gt; that you created.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;configuration&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The configuration object that you created.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The following example shows initializing an instance of &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/cardcomponent\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;CardComponent&lt;\\\/code&gt;\\n&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Initialize the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;swift&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;let cardComponent = CardComponent(paymentMethod: cardPaymentMethod, context: adyenContext, configuration: cardConfiguration)\\\\n\\\\\\\/\\\\\\\/ Keep the instance of the Component so that it doesn&#039;t get destroyed after the function is executed.\\\\nself.cardComponent = cardComponent\\\\n\\\\\\\/\\\\\\\/ Set self as the delegate.\\\\ncardComponent.delegate = self&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;&lt;br&gt;&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the contents of &lt;code&gt;data.paymentMethod&lt;\\\/code&gt; and pass this to your server. Dismiss the Component immediately, or wait until you have submitted the details to your server.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didSubmit with payment method data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didSubmit(_ data: PaymentComponentData, from component: PaymentComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;In case an error occurs on the app, the Component invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method from the &lt;code&gt;PaymentComponentDelegate&lt;\\\/code&gt;. Dismiss the Component&#039;s view controller and display an error message.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with an error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: PaymentComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;45fe7f3af7cb75443740822832c95759&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full data from &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request specifying:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0of the payment and\\u00a0its &lt;code&gt;value&lt;\\\/code&gt;\\u00a0in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;data.paymentMethod&lt;\\\/code&gt; from the &lt;code&gt;didSubmit&lt;\\\/code&gt; method from your client app.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL the shopper should be taken back to after a redirection. Use the custom URL for your app, for example, &lt;code&gt;my-app:\\\/\\\/adyen&lt;\\\/code&gt;, to take the shopper back to your app after they complete the payment outside of your app. For more information on setting a custom URL scheme, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;. The URL can contain a maximum of 1024 characters. You can also include your own additional query parameters, for example, shopper ID or order reference number.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;checkoutAttemptId&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt; generated by the Component to track the user payment journey. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;247af8c5facfdcf513f339da598ddef4&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Use &lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-ios\\\/5.0.0\\\/documentation\\\/adyen\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt;\\n&lt;\\\/a&gt; and the &lt;code&gt;action&lt;\\\/code&gt; object from the API response to handle the action.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full &lt;code&gt;action&lt;\\\/code&gt; object from your server to your client app.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create and persist instance of &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;AdyenActionComponent&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;internal lazy var actionComponent: AdyenActionComponent = {\\\\n  let component = AdyenActionComponent(apiContext: apiContext)\\\\n  component.delegate = self\\\\n  component.presentationDelegate = self\\\\n  return component\\\\n}()\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Use it to handle the action.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Handle the action&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;let action = try JSONDecoder().decode(Action.self, from: actionData)\\\\nactionComponent.handle(action)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; performs the additional action in your app.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;You handle the payment data, depending on the value of &lt;code&gt;action.type&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a id=\\&quot;redirect-component\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, the Component redirects your shopper to another website to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper returns to your app, inform &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt;. To do this, implement the following in your &lt;code&gt;UIApplicationDelegate&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-swift\\&quot;&gt;func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey: Any] = [:]) -&amp;gt; Bool {\\nRedirectComponent.applicationDidOpen(from: url)\\nreturn true\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;After the Redirect Component (under the hood of &lt;code&gt;AdyenActionComponent&lt;\\\/code&gt;) completes the additional action, the Component invokes the &lt;code&gt;didProvide&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;If an error occurs in the app, the Component invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;. Dismiss the Component&#039;s view controller and show an error message in your app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss the Component&lt;\\\/a&gt; immediately or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;If the shopper fails to return to your app, you do not get the additional data to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The Component handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;After the Component completes the additional action, it invokes the &lt;code&gt;didProvide&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;If an error occurs in the app, the Component invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;. Dismiss the Component&#039;s view controller and show an error message in your app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss current component&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to show the UI for QR code payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The Component polls the payment status and, if completed, calls the &lt;code&gt;didProvide&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;If an error occurs in the app, the Component invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;. Dismiss the Component&#039;s view controller and show an error message in your app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss current component&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use the payment method&#039;s app to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; triggers the app switch from your app to the payment method&#039;s app, if installed in the shopper&#039;s device.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper returns to your app, the Component invokes the &lt;code&gt;didProvide&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;If an error occurs in the app, the Component invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;. Dismiss the Component&#039;s view controller and show an error message in your app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss current component&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to show the UI for the voucher.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper shares, saves the voucher as an image or, in some cases, adds the voucher to Apple Wallet.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;When the shopper completes the flow, the Component invokes the &lt;code&gt;didComplete&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;If an error occurs in the app, the Component invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;. Dismiss the Component&#039;s view controller and show an error message in your app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss current component&lt;\\\/a&gt;. The payment flow in your app is complete.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;After the shopper pays, or the voucher expires, your webhook server gets the &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook to update the payment status&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;AdyenActionComponent&lt;\\\/code&gt; uses &lt;code&gt;presentationDelegate&lt;\\\/code&gt; to show the await UI. The shopper continues payment process outside of your app.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The Component polls the payment status and, if completed, calls the &lt;code&gt;didProvide&lt;\\\/code&gt; the &lt;code&gt;didProvide&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didProvide with action data&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didProvide(_ data: ActionComponentData, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;If an error occurs in the app, the Component invokes the &lt;code&gt;didFail&lt;\\\/code&gt; method from the &lt;code&gt;ActionComponentDelegate&lt;\\\/code&gt;. Dismiss the Component&#039;s view controller and show an error message in your app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;didFail with action error&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;func didFail(with error: Error, from component: ActionComponent)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;data&lt;\\\/code&gt; from the &lt;code&gt;didProvide&lt;\\\/code&gt; method.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#dismiss\\&quot;&gt;Dismiss current component&lt;\\\/a&gt; now or after the following step.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the contents of &lt;code&gt;data&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;98ffc58241599ced7811e31955ab5334&quot;:&quot;&lt;h2&gt;Optional configuration&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You can set additional configuration on the &lt;a href=\\&quot;#configure\\&quot;&gt;Component configuration&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperInformation&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Prefilled shopper information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;localizationParameters&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#localization\\&quot;&gt;Localization&lt;\\\/a&gt; parameters, like custom placeholders in other languages.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;style&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Custom styling of the UI.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The following example shows how to set optional configuration parameters on the Card Component.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Set optional configuration parameters&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ Create a configuration object for the Component.\\\\nlet cardComponentConfiguration = CardComponent.Configuration()\\\\n\\\\n\\\\\\\/\\\\\\\/ Optional: create a configuration object for styling.\\\\nlet style = FormComponentStyle()\\\\n\\\\\\\/\\\\\\\/ Set the background color.\\\\nstyle.backgroundColor = .darkGray\\\\n\\\\n\\\\\\\/\\\\\\\/ Set the style on the configuration object.\\\\ncardComponentConfiguration.style = style\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;71d1442d59b11ee59b767c0f165ab850&quot;:&quot;&lt;h2 id=\\&quot;optional-configuration\\&quot;&gt;Optional configuration&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You can set additional configuration on the &lt;a href=\\&quot;#configure\\&quot;&gt;Component configuration&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showsSubmitButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Set to &lt;strong&gt;false&lt;\\\/strong&gt; to hide the default pay button, so that you can &lt;a href=\\&quot;#custom-pay-button\\&quot;&gt;implement a custom button&lt;\\\/a&gt; instead. &lt;br&gt; Default: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperInformation&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Prefilled shopper information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;localizationParameters&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#localization\\&quot;&gt;Localization&lt;\\\/a&gt; parameters, like custom placeholders in other languages.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;style&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Custom styling of the UI.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The following example shows how to set optional configuration parameters on the Card Component.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Set optional configuration parameters&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ Create a configuration object for the Component.\\\\nlet cardComponentConfiguration = CardComponent.Configuration()\\\\n\\\\n\\\\\\\/\\\\\\\/ Optional: create a configuration object for styling.\\\\nlet style = FormComponentStyle()\\\\n\\\\\\\/\\\\\\\/ Set the background color.\\\\nstyle.backgroundColor = .darkGray\\\\n\\\\n\\\\\\\/\\\\\\\/ Set the style on the configuration object.\\\\ncardComponentConfiguration.style = style\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;h3 id=\\&quot;custom-pay-button\\&quot;&gt;Implement a custom pay button&lt;\\\/h3&gt;\\n&lt;p&gt;To implement a custom pay button, hide the default one and use the included functions to validate and submit payment data.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices blue\\&quot;&gt;\\n&lt;p&gt;This is not supported for &lt;a href=\\&quot;\\\/filters\\\/advanced-flow-integration\\\/ios\\\/5-14-0\\\/components\\\/optional-configuration\\\/payment-methods\\\/apple-pay\\&quot;&gt;Apple Pay&lt;\\\/a&gt; and &lt;a href=\\&quot;\\\/payment-methods\\\/bacs\\&quot;&gt;BACS Direct Debit&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;When you &lt;a href=\\&quot;#configure\\&quot;&gt;create the configuration object&lt;\\\/a&gt;, set &lt;code&gt;showsSubmitButton&lt;\\\/code&gt; to &lt;strong&gt;false&lt;\\\/strong&gt;. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#initialize\\&quot;&gt;Initialize&lt;\\\/a&gt; the Component.&lt;\\\/li&gt;\\n&lt;li&gt;You can optionally show a confirmation page to the shopper, where payment data is validated.&lt;\\\/li&gt;\\n&lt;li&gt;Create and show your custom button.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;You can use the following functions.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Function&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;validate()&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Validates the payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;submit()&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Makes a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request to submit the payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The following example shows the Card Component with a custom pay button.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Card Component with a custom pay button&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;swift\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;class CardPaymentViewController: UIViewController {\\\\n\\\\n    \\\\\\\/\\\\\\\/ The instance of CardComponent for handling card payments.\\\\n    var cardComponent: CardComponent?\\\\n\\\\n    \\\\\\\/\\\\\\\/ The function to configure and initialize an instance of CardComponent.\\\\n    func setupCardComponent() {\\\\n        \\\\\\\/\\\\\\\/ 1. Hide the default submit button in the CardComponent configuration.\\\\n        var cardComponentConfiguration = CardComponent.Configuration(showsSubmitButton: false)\\\\n\\\\n        \\\\\\\/\\\\\\\/ 2. Decode the payment method response and get the card payment method.\\\\n        let paymentMethods = try JSONDecoder().decode(PaymentMethods.self, from: paymentMethodsResponse)\\\\n        let paymentMethod = paymentMethods.paymentMethod(ofType: CardPaymentMethod.self) else {\\\\n            \\\\\\\/\\\\\\\/ If no valid payment method is found, exit setup.\\\\n            return\\\\n        }\\\\n\\\\n        \\\\\\\/\\\\\\\/ 3. Initialize the CardComponent with the payment method, context, and configuration.\\\\n        cardComponent = CardComponent(paymentMethod: paymentMethod,\\\\n                                       context: adyenContext,\\\\n                                       configuration: cardComponentConfiguration)\\\\n\\\\n        \\\\\\\/\\\\\\\/ 4. Set the delegate to handle CardComponent callbacks.\\\\n\\\\t    self.cardComponent = cardComponent\\\\n\\\\t    cardComponent.delegate = self\\\\n    }\\\\n\\\\n    override func viewDidLoad() {\\\\n        super.viewDidLoad()\\\\n\\\\n        \\\\\\\/\\\\\\\/ 5. Create your custom button for starting the payment.\\\\n        let customSubmitButton = UIButton(frame: .zero)\\\\n        customSubmitButton.setTitle(\\\\\\&quot;Pay Now\\\\\\&quot;, for: .normal)\\\\n        customSubmitButton.backgroundColor = .systemBlue\\\\n        customSubmitButton.layer.cornerRadius = 8\\\\n        customSubmitButton.addTarget(self, action: #selector(startPayment), for: .touchUpInside)\\\\n\\\\n        \\\\\\\/\\\\\\\/ 6. Configure and initialize an instance of CardComponent.\\\\n        setupCardComponent()\\\\n\\\\n        \\\\\\\/\\\\\\\/ 7. If the instance of CardComponent successfully initialized, add its view to the view hierarchy.\\\\n        if let cardView = cardComponent?.viewController.view {\\\\n            view.addSubview(cardView)\\\\n            \\\\\\\/\\\\\\\/ Optional: set constraints or position cardView.\\\\n        }\\\\n\\\\n        \\\\\\\/\\\\\\\/ 8. Add your custom pay button to the view hierarchy.\\\\n        view.addSubview(customSubmitButton)\\\\n      \\\\n        \\\\\\\/\\\\\\\/ 9. Optional: set constraints or change the position of your custom submit button.\\\\n\\\\n        \\\\\\\/\\\\\\\/ 10. Optional: configure additional UI elements or the layout.\\\\n        view.backgroundColor = .white\\\\n    }\\\\n\\\\n    \\\\\\\/\\\\\\\/ The action that is triggered when the shopper selects your custom button.\\\\n    @objc func startPayment() {\\\\n        \\\\\\\/\\\\\\\/ 11. Validate the payment details that the shopper entered.\\\\n        if cardComponent?.validate() == true {\\\\n            \\\\\\\/\\\\\\\/ 12. If validation is successful, submit the payment.\\\\n            cardComponent?.submit()\\\\n        } else {\\\\n            \\\\\\\/\\\\\\\/ 13. If validation is unsuccessful, handle validation errors. For example, show an error message to the user.\\\\n            print(\\\\\\&quot;Validation failed. Please check your card details.\\\\\\&quot;)\\\\n        }\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;8e0a4a9dfcaa4c481059a02da2a7b265&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full data from &lt;code&gt;didSubmit&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0of the payment and\\u00a0its &lt;code&gt;value&lt;\\\/code&gt;\\u00a0in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The complete &lt;code&gt;data.paymentMethod&lt;\\\/code&gt; object from the &lt;code&gt;didSubmit&lt;\\\/code&gt; method from your client app. It includes the payment method details and other required information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The object that includes information collected by the Component to track the user&#039;s payment journey, including information like the &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt;. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL the shopper should be taken back to after a redirection. Use the custom URL for your app, for example, &lt;code&gt;my-app:\\\/\\\/adyen&lt;\\\/code&gt;, to take the shopper back to your app after they complete the payment outside of your app. For more information on setting a custom URL scheme, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;. The URL can contain a maximum of 1024 characters. You can also include your own additional query parameters, for example, shopper ID or order reference number.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;}},&quot;api&quot;:{&quot;label&quot;:&quot;API only&quot;,&quot;description&quot;:&quot;Use Adyen APIs and your own UI&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;API only&lt;\\\/h2&gt;\\n&lt;p&gt;Create your own client-side UI and use our API endpoints to get the list of available payment methods and submit a payment.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=api%20only\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Full control of styling on your checkout page&lt;\\\/li&gt;\\n&lt;li&gt;Your own UI elements&lt;\\\/li&gt;\\n&lt;li&gt;Creating your own client-side logic&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Handling secure card data and authentication&lt;\\\/h3&gt;\\n&lt;p&gt;You must ensure that your integration complies with regulatory requirements such as &lt;a href=\\&quot;\\\/online-payments\\\/pci-dss-compliance\\&quot;&gt;PCI DSS&lt;\\\/a&gt; and &lt;a href=\\&quot;\\\/online-payments\\\/psd2-sca-compliance-and-implementation-guide\\&quot;&gt;PSD2 SCA&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;We recommend that you use our pre-built client-side solutions to securely do the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;Collect, validate, and encrypt card details&lt;\\\/strong&gt;: Implement our solution to &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/custom-card-integration\\&quot;&gt;handle encrypted card data&lt;\\\/a&gt; with your custom UI and comply with &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4\\&quot;&gt;PCI DSS regulations&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Authenticate transactions with 3D Secure 2&lt;\\\/strong&gt;: Handle the &lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt; using our solution and comply with &lt;a href=\\&quot;\\\/online-payments\\\/psd2-sca-compliance-and-implementation-guide\\\/sca-options\\&quot;&gt;PSD2 SCA regulations for online payments&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;visual_images&quot;:null,&quot;external_content&quot;:null,&quot;external_icon&quot;:null,&quot;versions&quot;:{&quot;version-72&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;d29b65a191babc748c518a5bc9291c1d&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c21dc00d84856607ad8414a933ace21f&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;8f73244559657311010bcfd0a3711a82&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;72&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-71&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b8767036c23fc898b4fe4307555a89f1&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;5b569a92f3a3c7de4b67aacc7f212d78&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;786c1dafef7066cbc356a23eb0c207ef&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;71&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-70&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;49553d0c2eecafd47d35c48fc68642f0&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6c29ad10c98a1843629710bd0d222cd5&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;8e0d2ffeaae92a7b41df5d1dedde2003&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;70&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-69&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;ccec09deed8749e1ac47f4772b8d38b0&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;58098d5e8caf3cb625c707247fb1a738&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;236ee43ba37e5d284f4c2d3885b07fe8&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;69&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-68&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;34980dd83da3c420a325c35b19c00939&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;af5d286bd5966944405025b175c2c183&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;c32bceaef0b7af884b98577f5864204f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;ab157ff912c4eaea22a34a75a8369fc4&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;68&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-67&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c7c4a66f75d2114afb39ac17c7578b5e&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;eddfc78168d4266537f7136b10ef2088&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;2f9e8a8059205dbebc21ade0951ec115&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;48123ef61e1fe482c7dd9663dc32b5ca&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;67&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-66&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;294595caa482d774d200781dc1d6cf1e&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4d93db5559af36969276a7f5807c5f8b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;17924e5dd58bd494cc2603efd2179f3f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;af3dd5c396d3d3217ddd545edf40d8cf&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;66&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;1d43d186aba254c470e458de75718609&quot;:&quot;&lt;p&gt;With an API-only integration, you create your own UI, implement your own client-side logic, and use our API to send and receive payment data. You have full control over the look and feel of your checkout page.&lt;\\\/p&gt;\\n&lt;p&gt;To reduce your development time and resources, you can use one of our pre-built UI options (Drop-in\\\/Components) instead.&lt;\\\/p&gt;&quot;,&quot;b70a81e509a54da6fb991872525e37da&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you build your integration, take into account the following requirements and preparations.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th style=\\&quot;text-align: left;\\&quot;&gt;Requirement&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: left;\\&quot;&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials\\\/roles\\\/\\&quot;&gt;API credential roles&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have the following role: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Checkout webservice role&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/account\\\/user-roles\\&quot;&gt;Customer Area roles&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have one of the following roles: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Merchant admin role&lt;\\\/strong&gt;&lt;\\\/li&gt; &lt;li&gt;&lt;strong&gt;Manage API credentials&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Webhooks&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Subscribe to the following webhook: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Standard webhooks&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;Limitations&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;ul&gt;&lt;li&gt;Your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;PCI compliance assesment&lt;\\\/a&gt; determines your &lt;a href=\\&quot;#collect-card-details\\&quot;&gt;integration options for card payments&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;For 3D Secure 2 authentication for shoppers using Chrome, your &lt;a href=\\&quot;https:\\\/\\\/developers.google.com\\\/search\\\/blog\\\/2020\\\/01\\\/get-ready-for-new-samesitenone-secure\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;cookies must use the &lt;code&gt;SameSite&lt;\\\/code&gt; attribute&lt;\\\/a&gt;. &lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;Setup steps&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Before you begin: &lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen#test-account\\&quot;&gt;Create your Adyen test account&lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;If you want to process payments using raw card data, contact your Adyen Account Manager to confirm that you are eligible.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;572979e4f54f785d3cc1e14627fadd95&quot;:&quot;&lt;h2 id=\\&quot;how-it-works\\&quot;&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For an API-only integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client&lt;\\\/strong&gt;: shows your custom UI where the shopper makes the payment. Passes data to and receives data from your payment server to handle the payment flow and additional actions on your client.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h2&gt;Integration steps&lt;\\\/h2&gt;\\n&lt;p&gt;The parts of your integration work together to handle the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, make an API request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Show the &lt;a href=\\&quot;#collect-shopper-details\\&quot;&gt;payment form to collect the shopper&#039;s payment details&lt;\\\/a&gt; in your UI.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment request&lt;\\\/a&gt; with the data that you have collected from the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;For some payment methods, you use your client to &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt; that your shopper must do. For example, you redirect your shopper to another website or show a QR code that the shopper uses to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps91523\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#collect-shopper-details\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabLWRJr90750\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;90750&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;294595caa482d774d200781dc1d6cf1e&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;iOS&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-66&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v66\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;:&quot;&lt;h2 id=\\&quot;build-your-payment-form\\&quot;&gt;Build your payment form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Create your payment form where the shopper enters their information. We recommend that you collect commonly-used &lt;a href=\\&quot;#information-in-the-payment-form\\&quot;&gt;shopper information in your payment form&lt;\\\/a&gt; to process a transactions, depending on your type of business.&lt;br \\\/&gt;\\n&lt;span id=\\&quot;collect-shopper-details\\&quot;&gt;&lt;\\\/span&gt;&lt;br \\\/&gt;\\nSome payment methods require you to collect, or optionally accept, additional information that you include in the payment request. For the additional information you must collect in your payment form for an individual payment method, go to our &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;guide for the individual payment method&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;We provide &lt;a href=\\&quot;#downloading-logos\\&quot;&gt;payment method and issuer logos that you can download&lt;\\\/a&gt; and use in your payment form.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;collect-card-details\\&quot;&gt;Credit and debit card details&lt;\\\/h3&gt;\\n&lt;p&gt;Because governing bodies and organizations regulate the handling of credit and debit card information strictly, you must make sure that you are compliant when collecting card details. When a shopper selects to pay with a card, use the integration option that corresponds to your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;level of PCI compliance&lt;\\\/a&gt;:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;(Recommended) Adyen&#039;s &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/custom-card-integration\\&quot;&gt;Custom Card Component&lt;\\\/a&gt; with encryption: our pre-built UI with logic to securely encrypt and handle payment card data.&lt;\\\/li&gt;\\n&lt;li&gt;Your own UI and logic to collect and handle &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/raw-card-data\\&quot;&gt;raw card data&lt;\\\/a&gt;: before you build an integration that collects raw credit and debit card data, you must &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;assess your PCI compliance according to the most extensive self-assessment form&lt;\\\/a&gt; and contact your Adyen Account Manager to confirm that you are eligible.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Information in the payment form&lt;\\\/h3&gt;\\n&lt;p&gt;After collecting information in your payment form, you must add it to corresponding API parameters that you include in the payment request.&lt;\\\/p&gt;\\n&lt;p&gt;For example, for commonly-used information:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Field in the payment form&lt;\\\/th&gt;\\n&lt;th&gt;API request parameter&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;First name&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperName.firstName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Last name&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperName.lastName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Email address&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperEmail&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Billing address (multiple fields)&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;billingAddress&lt;\\\/code&gt; (object)&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Shipping address (multiple fields)&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;deliveryAddress&lt;\\\/code&gt; (object)&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Phone number&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;telephoneNumber&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;3847c027124001dbd878122635d13126&quot;:&quot;&lt;div class=\\&quot;accordion-shortcode adl-accordion adl-accordion--max-height-transition\\&quot; data-expand=\\&quot;true\\&quot; data-ignore=\\&quot;anchorjs-link\\&quot;&gt;\\n    \\n    &lt;div class=\\&quot;adl-accordion__item\\&quot; style=\\&quot;\\&quot;&gt;\\n        &lt;div tabindex=\\&quot;0\\&quot; role=\\&quot;item\\&quot; aria-expanded=\\&quot;false\\&quot; class=\\&quot;adl-accordion__header\\&quot;&gt;\\n            &lt;i class=\\&quot;adl-accordion__toggle adl-icon-chevron-down\\&quot;&gt;&lt;\\\/i&gt;\\n            &lt;div class=\\&quot;adl-accordion__title-wrapper\\&quot; data-accordion=\\&quot;#downloading-logos\\&quot;&gt;\\n                                    &lt;h3 class=\\&quot;adl-accordion__title\\&quot;&gt;Downloading logos&lt;\\\/h3&gt;\\n                            &lt;\\\/div&gt;\\n        &lt;\\\/div&gt;\\n        &lt;div role=\\&quot;region\\&quot; class=\\&quot;adl-accordion__content\\&quot;&gt;\\n            \\n&lt;p&gt;If you are building your own UI, we provide payment method and issuing bank logos that you can use on your checkout page. The images are available in PNG format with different sizes and screen resolutions and in SVG format.&lt;\\\/p&gt;\\n&lt;p&gt;If you cannot find a payment method or issuer logo, contact our &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/ca\\\/ca\\\/contactUs\\\/support.shtml?form=other\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Support Team&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h4&gt;Payment method logos&lt;\\\/h4&gt;\\n&lt;p&gt;Download the images from the links below, specifying:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;img-size&lt;\\\/code&gt;: Specify the size for PNG format. Use the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;small&lt;\\\/strong&gt;: Image size 40x26 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;medium&lt;\\\/strong&gt;: Image size 77x50 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;large&lt;\\\/strong&gt;: Image size 154 x 100 pixels&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;suffix&lt;\\\/code&gt;: Specify the image density for PNG format. If not specified, the images will have the same size as the &lt;code&gt;img-size&lt;\\\/code&gt;.  Append any of the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;@2x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;@3x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-ldpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-hdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;pm-type&lt;\\\/code&gt;: The &lt;code&gt;paymentMethods.type&lt;\\\/code&gt; returned in the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response. For example, &lt;strong&gt;googlepay&lt;\\\/strong&gt; or &lt;strong&gt;primeiropay_boleto&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;For cards, the values you should use are specified under &lt;code&gt;brands&lt;\\\/code&gt; with &lt;code&gt;type&lt;\\\/code&gt;: &lt;strong&gt;scheme&lt;\\\/strong&gt;. For example, &lt;code&gt;mc&lt;\\\/code&gt;, &lt;code&gt;visa&lt;\\\/code&gt;, and &lt;code&gt;amex&lt;\\\/code&gt;. To get a generic card logo, set &lt;code&gt;pm-type&lt;\\\/code&gt; to &lt;strong&gt;card&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Download link for SVG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for SVG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[pm-type].svg\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Download link for PNG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for PNG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[img-size]\\\\\\\/[pm-type][suffix].png\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Examples:&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/mc.svg\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/mc.svg&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/large\\\/googlepay@2x.png\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/large\\\/googlepay@2x.png&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h4&gt;Issuing bank logos&lt;\\\/h4&gt;\\n&lt;p&gt;Some payment methods such as iDEAL present a list of issuing banks to the shopper.&lt;\\\/p&gt;\\n&lt;p&gt;Download the issuing bank logos from the links below, specifying:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;img-size&lt;\\\/code&gt;: Specify the size for PNG format. Use the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;small&lt;\\\/strong&gt;: Image size 40x26 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;medium&lt;\\\/strong&gt;: Image size 77x50 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;large&lt;\\\/strong&gt;: Image size 154 x 100 pixels&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;suffix&lt;\\\/code&gt;: Specify the image density for PNG format. If not specified, the images will have the same size as the &lt;code&gt;img-size&lt;\\\/code&gt;.  Append any of the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;@2x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;@3x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-ldpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-hdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;pm-type&lt;\\\/code&gt;: The &lt;code&gt;paymentMethods.type&lt;\\\/code&gt; in objects with &lt;code&gt;details.key&lt;\\\/code&gt; &lt;strong&gt;issuer&lt;\\\/strong&gt; returned in the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response. For example, &lt;strong&gt;ideal&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;issuerid&lt;\\\/code&gt;: The &lt;code&gt;details.items.id&lt;\\\/code&gt; referring to the issuing bank. For example, &lt;strong&gt;1121&lt;\\\/strong&gt; and &lt;strong&gt;1151&lt;\\\/strong&gt; for iDEAL.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Download link for SVG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for SVG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[pm-type]\\\\\\\/[issuerid].svg\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Download link for PNG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for PNG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[img-size]\\\\\\\/[pm-type]\\\\\\\/[issuerid][suffix].png\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Examples:&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/ideal\\\/1121.svg\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/ideal\\\/1121.svg&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/small\\\/ideal\\\/1151-xxhdpi.png\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/small\\\/ideal\\\/1151-xxhdpi.png&lt;\\\/a&gt;&lt;\\\/p&gt;\\n\\n        &lt;\\\/div&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;4d93db5559af36969276a7f5807c5f8b&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. Example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-66&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v66\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Store the &lt;code&gt;action.paymentData&lt;\\\/code&gt; object on your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#additional-action\\&quot;&gt;Handle the additional action&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQABAgBJp\\\\\\\/z\\\\\\\/T3+6P ...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;17924e5dd58bd494cc2603efd2179f3f&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabyfNWx90632\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;90632&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;TermUrl&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL for your page, to redirect the shopper to, after they finish authentication on the 3D Secure 2 page. This should be the same as the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; that you include when you &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;make a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-6067370540&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;TermUrl=https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;af3dd5c396d3d3217ddd545edf40d8cf&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the action you handled:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If you handled a redirect:\\n&lt;ul&gt;\\n&lt;li&gt;For a payment method redirect, pass the URL-decoded &lt;code&gt;redirectResult&lt;\\\/code&gt; and the complete &lt;code&gt;paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;li&gt;For a 3D Secure 2 redirect, pass the URL-decoded &lt;code&gt;MD&lt;\\\/code&gt;, &lt;code&gt;PaRes&lt;\\\/code&gt;, the complete &lt;code&gt;paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;li&gt;If you handled a non-redirect additional action: pass the complete &lt;code&gt;action.paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;What you do depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response includes an additional action.&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt; using the data from the latest  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response instead of the data from the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response without an action for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response without an action for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After the shopper finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;\\n  &lt;code&gt;resultCode&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;9339cccb051868e8f60981049948cdeb&quot;:&quot;&lt;h2 id=\\&quot;error-handling\\&quot;&gt;Error handling&lt;\\\/h2&gt;\\n&lt;p&gt;In case you encounter errors in your integration, refer to the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/error-codes\\&quot;&gt;API error codes&lt;\\\/a&gt;: If you receive a non-HTTP 200 response, use the &lt;code&gt;errorCode&lt;\\\/code&gt; to troubleshoot and modify your request.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/refusal-reasons\\&quot;&gt;Payment refusals&lt;\\\/a&gt;: If you receive an HTTP 200 response with an &lt;strong&gt;Error&lt;\\\/strong&gt; or &lt;strong&gt;Refused&lt;\\\/strong&gt; &lt;code&gt;resultCode&lt;\\\/code&gt;, check the refusal reason and, if possible, modify your request.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;51976743859edfbe0863f8222febf901&quot;:&quot;&lt;h2 id=\\&quot;test-and-go-live\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0&lt;a href=\\&quot;\\\/development-resources\\\/testing\\&quot;&gt;test your integration&lt;\\\/a&gt;. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting:\\n&lt;ul&gt;\\n&lt;li&gt;the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;, if you are using the Custom Card Component.&lt;\\\/li&gt;\\n&lt;li&gt;the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-D_Merchant.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-D&lt;\\\/a&gt;, if you are submitting raw card data.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.\\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;b21f96573eb957635d49f8525a08e0f2&quot;:&quot;&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps87947\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Set up notifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Receive confirmation when a payment is authorised or fails.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Payment modifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;c7c4a66f75d2114afb39ac17c7578b5e&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/67\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;iOS&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;eddfc78168d4266537f7136b10ef2088&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. Example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;2f9e8a8059205dbebc21ade0951ec115&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabuTFgb9201\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;9201&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;TermUrl&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL for your page, to redirect the shopper to, after they finish authentication on the 3D Secure 2 page. This should be the same as the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; that you include when you &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;make a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-6067370540&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;TermUrl=https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;48123ef61e1fe482c7dd9663dc32b5ca&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;34980dd83da3c420a325c35b19c00939&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/68\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;iOS&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;af5d286bd5966944405025b175c2c183&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. Example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;c32bceaef0b7af884b98577f5864204f&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabbqIK769166\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;69166&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;TermUrl&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL for your page, to redirect the shopper to, after they finish authentication on the 3D Secure 2 page. This should be the same as the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; that you include when you &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;make a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-6067370540&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;TermUrl=https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;ab157ff912c4eaea22a34a75a8369fc4&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;ccec09deed8749e1ac47f4772b8d38b0&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/69\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;iOS&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;58098d5e8caf3cb625c707247fb1a738&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. Example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabWHalN41080\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;41080&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-1374613331&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\\\\\\\\\/checkoutshopper\\\\\\\\\\\\\\\/threeDS\\\\\\\\\\\\\\\/checkoutRedirect\\\\\\\\\\\\\\\/... \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;236ee43ba37e5d284f4c2d3885b07fe8&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;49553d0c2eecafd47d35c48fc68642f0&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/70\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;iOS&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest()\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .countryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  .channel(PaymentMethodsRequest.ChannelEnum.IOS)\\\\n  .shopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.3.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentMethodsRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentMethodsRequest = new PaymentMethodsRequest();\\\\n$paymentMethodsRequest\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setCountryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  -&amp;gt;setChannel(\\\\&amp;quot;iOS\\\\&amp;quot;)\\\\n  -&amp;gt;setShopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .NET API Library v32.2.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest\\\\n{\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode = \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  Channel = PaymentMethodsRequest.ChannelEnum.IOS,\\\\n  ShopperLocale = \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.1.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentMethodsRequest := checkout.PaymentMethodsRequest{\\\\n  Amount: &amp;amp;amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode: common.PtrString(\\\\&amp;quot;NL\\\\&amp;quot;),\\\\n  Channel: common.PtrString(\\\\&amp;quot;iOS\\\\&amp;quot;),\\\\n  ShopperLocale: common.PtrString(\\\\&amp;quot;nl-NL\\\\&amp;quot;),\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v11.0.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;iOS&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.IOs,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;6c29ad10c98a1843629710bd0d222cd5&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. Example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-70&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v70\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8e0d2ffeaae92a7b41df5d1dedde2003&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-70&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v70\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;b8767036c23fc898b4fe4307555a89f1&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/71\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;iOS&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest()\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .countryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  .channel(PaymentMethodsRequest.ChannelEnum.IOS)\\\\n  .shopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.3.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentMethodsRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentMethodsRequest = new PaymentMethodsRequest();\\\\n$paymentMethodsRequest\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setCountryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  -&amp;gt;setChannel(\\\\&amp;quot;iOS\\\\&amp;quot;)\\\\n  -&amp;gt;setShopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .NET API Library v32.2.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest\\\\n{\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode = \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  Channel = PaymentMethodsRequest.ChannelEnum.IOS,\\\\n  ShopperLocale = \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.1.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentMethodsRequest := checkout.PaymentMethodsRequest{\\\\n  Amount: &amp;amp;amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode: common.PtrString(\\\\&amp;quot;NL\\\\&amp;quot;),\\\\n  Channel: common.PtrString(\\\\&amp;quot;iOS\\\\&amp;quot;),\\\\n  ShopperLocale: common.PtrString(\\\\&amp;quot;nl-NL\\\\&amp;quot;),\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v11.0.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;iOS&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.IOs,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Cards\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;5b569a92f3a3c7de4b67aacc7f212d78&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/71\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. Example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;786c1dafef7066cbc356a23eb0c207ef&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentDetailsResponse response = service.paymentsDetails(paymentDetailsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentsDetails($paymentDetailsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentsDetails(paymentDetailsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentDetailsRequest = {\\\\n  details: {\\\\n    redirectResult: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsDetailsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentDetailsRequest(paymentDetailsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentsDetails(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :details =&amp;gt; {\\\\n    :redirectResult =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cyI6IlkifQ==&#039;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;d29b65a191babc748c518a5bc9291c1d&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/72\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;iOS&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Cards\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;c21dc00d84856607ad8414a933ace21f&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. Example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8f73244559657311010bcfd0a3711a82&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.0\\\\nimport com.adyen.Client;\\\\nimport com.adyen.enums.Environment;\\\\nimport com.adyen.model.checkout.*;\\\\nimport com.adyen.model.RequestOptions;\\\\nimport com.adyen.service.checkout.*;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentDetailsResponse response = service.paymentsDetails(paymentDetailsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentsDetails($paymentDetailsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentsDetails(paymentDetailsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsDetailsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentDetailsRequest(paymentDetailsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentsDetails(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :details =&amp;gt; {\\\\n    :redirectResult =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cyI6IlkifQ==&#039;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;}}}},&quot;android&quot;:{&quot;label&quot;:&quot;Android&quot;,&quot;integrations&quot;:{&quot;drop-in&quot;:{&quot;label&quot;:&quot;Drop-in&quot;,&quot;description&quot;:&quot;Use our pre-built UI for accepting payments&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;Android Drop-in&lt;\\\/h2&gt;\\n&lt;p&gt;Render a list of available payment methods anywhere in your app.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=android%20drop-in\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Lowest development time to integrate payment methods&lt;\\\/li&gt;\\n&lt;li&gt;UI styling customization for the list of payment methods&lt;\\\/li&gt;\\n&lt;li&gt;Adding payment methods to the list requires no extra development time&lt;\\\/li&gt;\\n&lt;li&gt;3D Secure 2 support built in&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;visual_images&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/android\\\/dropin\\\/visual\\\/android-dropin.svg&quot;,&quot;external_content&quot;:&quot;&lt;h3&gt;Adyen Android on GitHub&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-android\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View the Adyen Android repository&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-android\\\/tree\\\/main\\\/example-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View our example integration&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-android\\\/index.html\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View the code explorer on GitHub Pages&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;external_icon&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/android\\\/github\\\/github-mark.png&quot;,&quot;versions&quot;:{&quot;version-5.17.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;872ff649233d770d6c207529542c48ee&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;50c8e0cf7c785439f8bf2bf635fb82e8&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.17.0&quot;}},&quot;version-5.16.1&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;872ff649233d770d6c207529542c48ee&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;50c8e0cf7c785439f8bf2bf635fb82e8&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.1&quot;}},&quot;version-5.16.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;872ff649233d770d6c207529542c48ee&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;50c8e0cf7c785439f8bf2bf635fb82e8&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-5.15.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.15.0&quot;}},&quot;version-5.14.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.14.0&quot;}},&quot;version-5.13.1&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.13.1&quot;}},&quot;version-5.13.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.13.0&quot;}},&quot;version-5.12.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.12.0&quot;}},&quot;version-5.11.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.11.0&quot;}},&quot;version-5.10.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.10.0&quot;}},&quot;version-5.9.1&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.9.1&quot;}},&quot;version-5.9.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.9.0&quot;}},&quot;version-5.8.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.8.0&quot;}},&quot;version-5.7.1&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.7.1&quot;}},&quot;version-5.7.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.7.0&quot;}},&quot;version-5.6.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.6.0&quot;}},&quot;version-5.5.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.5.0&quot;}},&quot;version-5.4.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.4.0&quot;}},&quot;version-5.3.1&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.3.1&quot;}},&quot;version-5.3.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;5f2919517cd3d618153aad9093b0acf0&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;ff82cb86d21478554a82f924e6a63212&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.3.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-5.2.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a0924f5635071c1dca3586c6f2329cc8&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;f50904954c41de54bd491602b8f50d54&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;ff9666779eda13fa176ccc8b789469a1&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;60a5d670f081db5f49f007152694beca&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.2.0&quot;}},&quot;version-5.1.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a0924f5635071c1dca3586c6f2329cc8&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;f50904954c41de54bd491602b8f50d54&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;ff9666779eda13fa176ccc8b789469a1&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;60a5d670f081db5f49f007152694beca&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.1.0&quot;}},&quot;version-5.0.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;a0924f5635071c1dca3586c6f2329cc8&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;d328a99354c4004af56046c214c9d536&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;f50904954c41de54bd491602b8f50d54&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;ff9666779eda13fa176ccc8b789469a1&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;60a5d670f081db5f49f007152694beca&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;edf08374b59bbffa2a4017220c63438a&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;44fe21aa772f647e2786be9f80907025&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;986296cfd4a410e95db4c9eb425186d7&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;041aeb2e23cf7f79e404760212cef830&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-4.13.6&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.6&quot;}},&quot;version-4.13.5&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.5&quot;}},&quot;version-4.13.4&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.4&quot;}},&quot;version-4.13.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.3&quot;}},&quot;version-4.13.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.2&quot;}},&quot;version-4.13.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.1&quot;}},&quot;version-4.13.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.0&quot;}},&quot;version-4.12.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.12.1&quot;}},&quot;version-4.12.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.12.0&quot;}},&quot;version-4.11.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.11.0&quot;}},&quot;version-4.10.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.0&quot;}},&quot;version-4.9.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.9.1&quot;}},&quot;version-4.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.9.0&quot;}},&quot;version-4.8.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.8.0&quot;}},&quot;version-4.7.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.7.1&quot;}},&quot;version-4.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.7.0&quot;}},&quot;version-4.6.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.6.1&quot;}},&quot;version-4.6.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;d75368662ebddcdd561adfd98b856ef6&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;8c903b840312496b8453236412c04b02&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;set_up_drop_in&quot;:{&quot;$ref&quot;:&quot;0d4c2a5c3d68869066983330a7fec964&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;},&quot;initialize_drop_in&quot;:{&quot;$ref&quot;:&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;92d75b84776fd01bb2b9568c0335cb64&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;eed54743df88320361b03930d2fc162c&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;4.6.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;a19974e7468bf9bab91ee5104b2b0f6d&quot;:&quot;&lt;p&gt;Use Drop-in, our all-in-one UI solution, to accept payments on your Android app using a single client-side implementation. We recommend that you use Drop-in if you want a quick way to start accepting payments on your website, with little to no customization.&lt;\\\/p&gt;&quot;,&quot;d75368662ebddcdd561adfd98b856ef6&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you begin to integrate, make sure you have followed the &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen guide&lt;\\\/a&gt; to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Get an overview of the steps needed to accept live payments.&lt;\\\/li&gt;\\n&lt;li&gt;Create your test account.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After you have created your test account:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt; to know the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3 id=\\&quot;install\\&quot;&gt;Install the Adyen Android client-side library&lt;\\\/h3&gt;\\n&lt;p&gt;Android Drop-in is available through &lt;a href=\\&quot;https:\\\/\\\/repo1.maven.org\\\/maven2\\\/com\\\/adyen\\\/checkout\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Maven Central&lt;\\\/a&gt;. You only need to add the build dependency on Gradle.&lt;\\\/p&gt;\\n&lt;p&gt;Add the following to your &lt;code&gt;build.gradle&lt;\\\/code&gt; (Module) file. To get the latest version, check our &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-android\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;GitHub repository&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-groovy\\&quot;&gt;implementation &#039;com.adyen.checkout:drop-in:&amp;lt;latest-version&amp;gt;&#039;&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;h3 id=\\&quot;client-key\\&quot;&gt;Get your client key&lt;\\\/h3&gt;\\n&lt;p&gt;To configure Drop-in, you&#039;ll need a client key: 1. Log in to your &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Go to &lt;strong&gt;Developers&lt;\\\/strong&gt; &amp;gt; &lt;strong&gt;API credentials&lt;\\\/strong&gt;, and select the API credential for your integration, for example &lt;strong&gt;ws@Company.[YourCompanyAccount]&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Under &lt;strong&gt;Authentication&lt;\\\/strong&gt;, select &lt;strong&gt;Generate New Client Key&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Select &lt;strong&gt;Save&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8c903b840312496b8453236412c04b02&quot;:&quot;&lt;h2 id=\\&quot;how-it-works\\&quot;&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Drop-in integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a rel=\\&quot;lightbox\\&quot; href=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/android\\\/4-6-0\\\/drop-in\\\/01.how-it-works\\\/drop-in-flow.jpg\\&quot; src=\\&quot;\\&quot;&gt;\\n  &lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/android\\\/4-6-0\\\/drop-in\\\/01.how-it-works\\\/drop-in-flow.jpg\\&quot; \\\/&gt;\\n&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#set-up-drop-in\\&quot;&gt;Set up Drop-in&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, submit a request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#initialize-drop-in\\&quot;&gt;Initialize Drop-in&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#make-a-payment\\&quot;&gt;Submit a payment request&lt;\\\/a&gt; with data you receive from Drop-in.&lt;\\\/li&gt;\\n&lt;li&gt;Some payment methods require additional actions before a payment can be completed. &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Submit the results of the additional payment details&lt;\\\/a&gt; with data you receive from Drop-in.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps32224\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#set-up-drop-in\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabTEOfJ19664\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;19664&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;0d4c2a5c3d68869066983330a7fec964&quot;:&quot;&lt;h2 id=\\&quot;set-up-drop-in\\&quot;&gt;Set up Drop-in&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You will need to create an implementation of the Drop-in Service in your client app to provide information to your server. Your server will use this information to make calls to the Adyen server.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Extend the &lt;code&gt;DropInService&lt;\\\/code&gt; class.&lt;\\\/p&gt;\\n&lt;p&gt;The methods &lt;code&gt;makePaymentsCall&lt;\\\/code&gt; and &lt;code&gt;makeDetailsCall&lt;\\\/code&gt; pass payment data between your client app and your server, and are expected to return a &lt;code&gt;DropInServiceResult&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;The &lt;code&gt;DropInServiceResult&lt;\\\/code&gt; contains the result of the API calls from your server. Drop-in uses the &lt;code&gt;DropInServiceResult&lt;\\\/code&gt; to determine if you must take additional action to complete the payment, such as redirecting the shopper to another site or performing 3D Secure authentication.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-kotlin\\&quot;&gt;class YourDropInService : DropInService() {\\n   \\\/\\\/ Handling for submitting a payment request\\n   override fun makePaymentsCall(paymentComponentJson: JSONObject): DropInServiceResult {\\n       ...\\n       \\\/\\\/ See step 3 - Your server should make a \\\/payments call containing the `paymentComponentJson`\\n       \\\/\\\/ Create the `DropInServiceResult` based on the \\\/payments response\\n       return DropInServiceResult.Action(\\&quot;action JSON object\\&quot;)\\n   }\\n   \\\/\\\/ Handling for submitting additional payment details\\n   override fun makeDetailsCall(actionComponentJson: JSONObject): DropInServiceResult {\\n       ...\\n       \\\/\\\/ See step 4 - Your server should make a \\\/payments\\\/details call containing the `actionComponentJson`\\n       \\\/\\\/ Create the `DropInServiceResult` based on the \\\/payments\\\/details response\\n       return DropInServiceResult.Finished(\\&quot;Authorised\\&quot;)\\n   }\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;After your server makes a payment request, the API response may return an &lt;code&gt;action&lt;\\\/code&gt; object. Your server should return any of the following types of &lt;code&gt;DropInServiceResult&lt;\\\/code&gt; to your client app:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;When to return this value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;Action&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you received an &lt;code&gt;action&lt;\\\/code&gt; object in the API response, return &lt;code&gt;DropInServiceResult.Action&lt;\\\/code&gt; and the &lt;code&gt;action&lt;\\\/code&gt;  object.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;Finished&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you did not receive an &lt;code&gt;action&lt;\\\/code&gt; object in the API response, return &lt;code&gt;DropInServiceResult.Finished&lt;\\\/code&gt; and the &lt;code&gt;resultCode&lt;\\\/code&gt; from the response.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;Error&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Return this if an error happened during the connection.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice info\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;The API requests in the sample server-side code are discussed in detail in &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;the make a payment section&lt;\\\/a&gt; for making a payment and &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;the handle additional payment details section&lt;\\\/a&gt; for submitting additional payment details.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Add the service to your manifest file.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-xml\\&quot;&gt;&amp;lt;service android:name=\\&quot;.YourDropInService\\&quot;\\\/&amp;gt;&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Configure Drop-in:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;ClientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The default value is &lt;strong&gt;TEST&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our live environments.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Show the amount a shopper has to pay on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button. To do this, you include the &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;currency&lt;\\\/a&gt; and the amount (in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;) that the shopper has to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;ShopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, Drop-in is rendered in the language set for the device. To change the language, set the shopper locale to the &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-android\\\/tree\\\/main\\\/drop-in\\\/src\\\/main\\\/res\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;required language code&lt;\\\/a&gt;. You also need to set the shopper locale in the &lt;code&gt;[paymentMethod]Configuration&lt;\\\/code&gt; object and in step 2 where you make the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; call.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;[paymentMethod]Configuration&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#optional-configuration\\&quot;&gt;Optional configuration for specific payment methods&lt;\\\/a&gt;, for example &lt;code&gt;CardConfiguration&lt;\\\/code&gt; for cards.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;The following example shows how to configure Drop-in for testing, with a &lt;strong&gt;Pay&lt;\\\/strong&gt; button displaying &lt;strong&gt;EUR&amp;nbsp;10&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a id=\\&quot;init-drop-in\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-kotlin\\&quot;&gt;val amount = Amount()\\n  \\\/\\\/ Optional. In this example, the Pay button will show 10 EUR.\\n  amount.currency = \\&quot;EUR\\&quot;\\n  amount.value = 10_00\\n\\nval dropInConfiguration = DropInConfiguration.Builder(YourContext, YourDropInService::class.java, \\&quot;YOUR_CLIENT_KEY\\&quot;)\\n   \\\/\\\/ Optional. Use if you want to display the amount and currency on the Pay button.\\n   .setAmount(amount)\\n   \\\/\\\/ When you are ready to accept live payments, change the value to one of our live environments.\\n   .setEnvironment(Environment.TEST)\\n   .build()&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;h3 id=\\&quot;optional-configuration\\&quot;&gt;Optional configuration for payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;When configuring Drop-in, you can optionally add a configuration object for a specific payment method. This overrides the global &lt;code&gt;DropInConfiguration&lt;\\\/code&gt; for that payment method, so make sure to specify the values for all required parameters for the payment method that you want to configure.&lt;\\\/p&gt;\\n&lt;p&gt;For example, if you call &lt;code&gt;DropInConfiguration.Builder.setEnvironment(Environment.LIVE)&lt;\\\/code&gt;, you must also call &lt;code&gt;CardConfiguration.Builder.setEnvironment(Environment.LIVE)&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;The following example shows how to configure Drop-in for live payments, using the &lt;code&gt;CardConfiguration&lt;\\\/code&gt; object to hide the switch for saving card details.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-kotlin\\&quot;&gt; \\\/\\\/ Configuration for cards.\\nval cardConfiguration = CardConfiguration.Builder(YourContext, \\&quot;YOUR_CLIENT_KEY\\&quot;)\\n        \\\/\\\/ hides the switch for saving card details\\n        .setShowStorePaymentField(false)\\n        \\\/\\\/ Required to accept live card payments.\\n        .setEnvironment(Environment.LIVE)\\n        .build()\\n\\n \\\/\\\/ Global Drop-in configuration\\nval dropInConfiguration = DropInConfiguration.Builder(YourContext, YourDropInService::class.java, \\&quot;YOUR_CLIENT_KEY\\&quot;)\\n  \\\/\\\/ Make sure that you have set the environment in the payment method configuration object as well.\\n   .setEnvironment(Environment.LIVE)\\n   .addCardConfiguration(cardConfiguration)\\n   .build()&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;p&gt;To see which parameters you can configure for specific payment methods, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guides&lt;\\\/a&gt;.&lt;\\\/p&gt;&quot;,&quot;a8c2acbff5cd96d26cdbf49a32841f63&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.&lt;\\\/p&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/#\\\/CheckoutService\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;Android&lt;\\\/strong&gt;. Adyen returns only the payment methods available for Android.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. Adyen returns only the payment methods available in this country. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, the &lt;code&gt;shopperlocale&lt;\\\/code&gt; is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code. You also need to set the same &lt;code&gt;ShopperLocale&lt;\\\/code&gt; within your Drop-in configuration.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;A request to get the available payment methods for a shopper in the Netherlands, for a payment of &lt;strong&gt;10&lt;\\\/strong&gt; EUR:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;advanced-flow-post-payment-methods-request&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Android&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available &lt;code&gt;paymentMethods&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&amp;lt;code&amp;gt;\\\/paymentMethods&amp;lt;\\\/code&amp;gt; response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;Cards\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;scheme\\\\\\&quot;\\\\n    ...\\\\n  },\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n  },\\\\n  ...\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Pass the response to your client app. You will use this in the next step to present which payment methods are available to the shopper.&lt;\\\/p&gt;&quot;,&quot;d4ed4ee180ebb9a05acbef9cc6811352&quot;:&quot;&lt;h2 id=\\&quot;initialize-drop-in\\&quot;&gt;Initialize Drop-in&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Deserialize the response with the &lt;code&gt;SERIALIZER&lt;\\\/code&gt; object and store it as a &lt;code&gt;PaymentMethodsApiResponse&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-kotlin\\&quot;&gt;val paymentMethodsApiResponse = PaymentMethodsApiResponse.SERIALIZER.deserialize(paymentMethodsResponse)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Call &lt;code&gt;.startPayment()&lt;\\\/code&gt; method and pass these parameters:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;the context (for example, &lt;code&gt;this@MainActivity&lt;\\\/code&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;the deserialized &lt;code&gt;PaymentMethodsApiResponse&lt;\\\/code&gt; object (for example, &lt;code&gt;paymentMethodsApiResponse&lt;\\\/code&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;your extended &lt;code&gt;DropInService&lt;\\\/code&gt; class (for example, &lt;code&gt;dropInConfiguration&lt;\\\/code&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;Optional: an Intent to be launched after Drop-in finishes (for example, &lt;code&gt;ResultActivity&lt;\\\/code&gt;)&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div class=\\&quot;sc-notice info\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;You should not initialize Drop-in if the &lt;code&gt;PaymentMethodsApiResponse&lt;\\\/code&gt; is null.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/div&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-kotlin\\&quot;&gt;   \\\/\\\/Optional. In this example, ResultActivity will be launched after Drop-in finishes\\n   val resultIntent = Intent(YourContext, ResultActivity::class.java)\\n\\n   DropIn.startPayment(YourContext, paymentMethodsApiResponse, dropInConfiguration, resultIntent)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;p&gt;Drop-in presents the available payment methods and collects payment details from the shopper.&lt;\\\/p&gt;&quot;,&quot;67b93ef8d49f5264794ae3cdc58ee6d8&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper submits their payment details, the &lt;code&gt;makePaymentsCall&lt;\\\/code&gt; method in your &lt;code&gt;YourDropInService&lt;\\\/code&gt; class is invoked with the &lt;code&gt;paymentComponentJson&lt;\\\/code&gt; JSON object as parameter.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;paymentComponentJson&lt;\\\/code&gt; JSON object to your server to submit the shopper&#039;s payment details. Your server needs to make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request specifying:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;paymentComponentData.paymentMethod&lt;\\\/code&gt; from your client app.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;In case of a redirection, this is the URL to where your shopper should return to after they complete the payment. This URL can have a maximum of 1024 characters. Get this URL from Drop-in in the &lt;code&gt;RedirectComponent.getReturnUrl(context)&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;You need to include additional parameters in your payment request to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrate some payment methods. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Make use of our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Use &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/android-drop-in#create-a-token\\&quot;&gt;Tokenize your shopper&#039;s payment details&lt;\\\/a&gt; or &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/android-drop-in#make-a-payment-with-a-token\\&quot;&gt;make recurring payments&lt;\\\/a&gt;.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The following example shows how to make a payment request for &lt;strong&gt;EUR&amp;nbsp;10&lt;\\\/strong&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;payments-request-component-android&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .returnUrl(\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  ReturnUrl = \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: \\\\&amp;quot;STATE_DATA\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  ReturnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: \\\\&amp;quot;STATE_DATA\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; &#039;STATE_DATA&#039;,\\\\n  :returnUrl =&amp;gt; &#039;adyencheckout:\\\\\\\/\\\\\\\/your.package.name&#039;,\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Your next steps depend on whether the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;th&gt;Next steps&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;No &lt;code&gt;action&lt;\\\/code&gt; object&lt;\\\/td&gt;\\n&lt;td&gt;No additional steps are needed to complete the payment.&lt;\\\/td&gt;\\n&lt;td&gt;1. Return &lt;code&gt;DropInServiceResult.Finished&lt;\\\/code&gt; to your client app, along with the the &lt;code&gt;resultCode&lt;\\\/code&gt; from the response. &lt;br&gt; 2. &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;With &lt;code&gt;action&lt;\\\/code&gt; object&lt;\\\/td&gt;\\n&lt;td&gt;The shopper needs to do additional actions to complete the payment.&lt;\\\/td&gt;\\n&lt;td&gt;1. Return &lt;code&gt;DropInServiceResult.Action&lt;\\\/code&gt; to your client app, along with the &lt;code&gt;action&lt;\\\/code&gt; object. &lt;br&gt; 2. &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n\\n&lt;div id=\\&quot;tab3Gspn42618\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;42618&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v67 and later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;The following example shows a  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response with &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2&amp;lt;\\\\\\\/strong&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;\\\\\\\/payments response&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;IdentifyShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot; : {\\\\\\\\n   \\\\\\\\\\\\&amp;quot;token\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;eyJkaXJl...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;Ab02b4c0...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;threeDS2\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;authorisationToken\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;BQABAQ...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;subtype\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;fingerprint\\\\\\\\\\\\&amp;quot;\\\\\\\\n }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v67&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67-response_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v67&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v66 and earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;The following example shows a  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response with &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2Fingerprint&amp;lt;\\\\\\\/strong&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;\\\\\\\/payments response&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;IdentifyShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCuZFJrQOjSsl\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/zt+...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;token\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eyJ0aHJlZURTTWV0aG9kTm90aWZpY...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;threeDS2Fingerprint\\\\\\\\\\\\&amp;quot;\\\\\\\\n },\\\\\\\\n \\\\\\\\\\\\&amp;quot;authentication\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;threeds2.fingerprintToken\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eyJ0aHJlZURTTWV0aG9kTm90aWZpY...\\\\\\\\\\\\&amp;quot;\\\\\\\\n },\\\\\\\\n \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n   {\\\\\\\\n     \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;threeds2.fingerprint\\\\\\\\\\\\&amp;quot;,\\\\\\\\n     \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n ],\\\\\\\\n ...\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v66&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66-response_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v66&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;92d75b84776fd01bb2b9568c0335cb64&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n &lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/p&gt;\\n&lt;p&gt;Some payment methods require additional action from the shopper such as: to authenticate a payment with 3D Secure, or to switch to another app to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;To handle these additional client app actions, Drop-in checks if &lt;code&gt;DropInServiceResult.Action&lt;\\\/code&gt; was returned. If so, do the following:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;In your client app, the &lt;code&gt;makeDetailsCall&lt;\\\/code&gt; method in your &lt;code&gt;YourDropInService&lt;\\\/code&gt; class is invoked with the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; JSON object as parameter. In the &lt;code&gt;makeDetailsCall&lt;\\\/code&gt; method &lt;a href=\\&quot;#set-up-drop-in\\&quot;&gt;when you set up Drop-in&lt;\\\/a&gt;, you submit the additional payment details by passing the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object from your app to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request with the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object from your client app:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;details-request-component&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{hint:object passed from your client app}STATE_DATA{\\\\\\\/hint}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nString xApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nClient client = new Client(xApiKey,Environment.TEST);\\\\nCheckout checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nPaymentsDetailsRequest paymentsDetailsRequest = STATE_DATA;\\\\nPaymentsResponse paymentsDetailsResponse = checkout.paymentsDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\n$params = STATE_DATA;\\\\n$result = $service-&amp;gt;paymentsDetails($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed.\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from the client app, deserialized from JSON to a data structure.\\\\nvar paymentsDetailsRequest = STATE_DATA;\\\\nvar paymentsDetailsResponse = checkout.PaymentDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;[ADYEN_API_KEY]&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\ncheckout.paymentsDetails(STATE_DATA).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;[ADYEN_API_KEY]\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nreq := STATE_DATA;\\\\nres, httpRes, err := client.Checkout.PaymentsDetails(&amp;amp;req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresult = adyen.checkout.payments_details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresponse = adyen.checkout.payments.details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client\\\\n   puts response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode to your client\\\\n   puts response.body[:resultCode]\\\\nend&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;div id=\\&quot;tabdTb6085101\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;85101&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v67 and later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;The &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/#\\\\\\\/CheckoutService\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; response includes:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;pspReference&amp;lt;\\\\\\\/code&amp;gt;: Our unique identifier for the transaction.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;resultCode&amp;lt;\\\\\\\/code&amp;gt;: Indicates the status of the payment.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v67&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67-details-response_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v67&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v66 and earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Your next steps depend on whether the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; response contains an &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Next steps&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;No &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;No additional steps are needed to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Return &amp;lt;code&amp;gt;DropInServiceResult.Finished&amp;lt;\\\\\\\/code&amp;gt; to your client app, along with the the &amp;lt;code&amp;gt;resultCode&amp;lt;\\\\\\\/code&amp;gt; from the response. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;Get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;With &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The shopper needs to do additional actions to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Return &amp;lt;code&amp;gt;DropInServiceResult.Action&amp;lt;\\\\\\\/code&amp;gt; to your client app, along with the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; again.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v66&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66-details-response_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v66&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Successful payment response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Refused response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After Drop-in finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;\\n  &lt;code&gt;resultCode&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;eed54743df88320361b03930d2fc162c&quot;:&quot;&lt;h2 id=\\&quot;testing-your-integration\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to test your integration. Use the &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers#android-test-cards-app\\&quot;&gt;Adyen Android test cards app&lt;\\\/a&gt; to access, copy, and autofill card details from within your Android device. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt; &lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/prepare-application\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. \\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide#mobile-in-app-online-payments-integration\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt;, and submit the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Load Drop-in from one of our live environments and set the &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-android\\\/blob\\\/main\\\/core\\\/src\\\/main\\\/java\\\/com\\\/adyen\\\/checkout\\\/core\\\/common\\\/Environment.kt\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;Environment&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to match your live endpoints:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;environment&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;EUROPE&lt;\\\/strong&gt; or &lt;strong&gt;LIVE&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;AUSTRALIA&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;US&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;UNITED_STATES&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Asia Pacific South East&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;APSE&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The &lt;code&gt;Environment&lt;\\\/code&gt; must match the region of the live endpoints you are connecting to.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8042ebe5d4e577ca8316d439b83df001&quot;:&quot;&lt;h2 id=\\&quot;next-steps\\&quot;&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps39187\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Modify payments&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods#add-payment-methods-to-your-account\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Tokenization&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Save shopper payment details for later payments.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;e2985df29c09cf3014a42b5cb69515b7&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you begin to integrate, make sure you have followed the &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen guide&lt;\\\/a&gt; to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Get an overview of the steps needed to accept live payments.&lt;\\\/li&gt;\\n&lt;li&gt;Create your test account.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After you have created your test account:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt; to know the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;a0924f5635071c1dca3586c6f2329cc8&quot;:&quot;&lt;h2 id=\\&quot;how-it-works\\&quot;&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Drop-in integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a rel=\\&quot;lightbox\\&quot; href=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/android\\\/5-0-0\\\/drop-in\\\/01.how-it-works\\\/drop-in-flow.jpg\\&quot; src=\\&quot;\\&quot;&gt;\\n  &lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/android\\\/5-0-0\\\/drop-in\\\/01.how-it-works\\\/drop-in-flow.jpg\\&quot; \\\/&gt;\\n&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, submit a request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#configure\\&quot;&gt;Configure&lt;\\\/a&gt; and &lt;a href=\\&quot;#launch-and-show\\&quot;&gt;launch&lt;\\\/a&gt; Drop-in to collect the shopper&#039;s details.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment request&lt;\\\/a&gt; with data that you receive from Drop-in.&lt;\\\/li&gt;\\n&lt;li&gt;Handle &lt;a href=\\&quot;#handle-action-object\\&quot;&gt;additional client-side actions&lt;\\\/a&gt;, if required.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;send additional payment details&lt;\\\/a&gt; with data you receive from Drop-in, if required.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt; to inform the shopper and update your order management system.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps78032\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#set-up\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;592382df9fbfc701c5e5d1b486ab47c3&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabHAs1S57000\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;57000&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.model.checkout.CreateCheckoutSessionRequest;\\\\\\\\nimport com.adyen.model.checkout.CreateCheckoutSessionResponse;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;d328a99354c4004af56046c214c9d536&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, including:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;We recommend that you include all the optional parameters to get the most accurate list of available payment methods.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;Android&lt;\\\/strong&gt;. Adyen returns only the payment methods available for Android.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. Adyen returns only the payment methods available in this country. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, the &lt;code&gt;shopperlocale&lt;\\\/code&gt; is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code. You also need to set the same &lt;code&gt;ShopperLocale&lt;\\\/code&gt; within your Drop-in configuration.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example, to get available payment methods for a shopper in the Netherlands, for a payment of &lt;strong&gt;10&lt;\\\/strong&gt; EUR:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;advanced-flow-post-payment-methods-request&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Android&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available &lt;code&gt;paymentMethods&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;\\\/paymentMethods response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;Cards\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;scheme\\\\\\&quot;\\\\n    ...\\\\n  },\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n  },\\\\n  ...\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Deserialize the response to a &lt;code&gt;PaymentMethodsApiResponse&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Deserialize the response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;java\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;val paymentMethodsApiResponse = PaymentMethodsApiResponse.SERIALIZER.deserialize(paymentMethodsResponse)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;Pass the &lt;code&gt;PaymentMethodsApiResponse&lt;\\\/code&gt; object to your client app to &lt;a href=\\&quot;#launch-and-show\\&quot;&gt;launch and show Drop-in&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;f50904954c41de54bd491602b8f50d54&quot;:&quot;&lt;h2 id=\\&quot;set-up\\&quot;&gt;Set up Drop-in&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;1: Import the library&lt;\\\/h3&gt;\\n&lt;p&gt;The default implementation is with Jetpack Compose, but you can import the library without Jetpack Compose instead.&lt;\\\/p&gt;\\n&lt;p&gt;Import the compatibility module in your &lt;code&gt;build.gradle&lt;\\\/code&gt; file:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tab0bNnh43127\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;43127&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;With Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Import the module with Compose&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;implementation \\\\\\\\\\\\&amp;quot;com.adyen.checkout:drop-in-compose:YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;compose-import_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;compose&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Without Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Import the module without Compose&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;implementation \\\\\\\\\\\\&amp;quot;com.adyen.checkout:drop-in:YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;no-compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;no-compose-import_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;no-compose&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;ff9666779eda13fa176ccc8b789469a1&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;2: Create the configuration object&lt;\\\/h3&gt;\\n&lt;p&gt;Create the configuration object to pass when you launch and show Drop-in.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Set the following properties in the configuration object: &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Property&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you want to show the amount on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;td&gt;The currency and value of the payment amount shown on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. To use the device&#039;s default locale, replace this with your context.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;code&gt;Environment.TEST&lt;\\\/code&gt; for testing. When going live, use one of our live environments.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your client key.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;ol start=\\&quot;2\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Add additional configuration to this object. Some &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment methods&lt;\\\/a&gt; require additional configuration, and you can add optional configuration for Drop-in.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Call the &lt;code&gt;build&lt;\\\/code&gt; function.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for configuring and building&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Create the amount object.\\\\nval amount = Amount(\\\\n    currency = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value = 1000,\\\\n)\\\\n\\\\n\\\\\\\/\\\\\\\/ Create a configuration object.\\\\nval dropInConfiguration = DropInConfiguration.Builder(\\\\n    shopperLocale, \\\\\\\/\\\\\\\/ Use your context instead to use the device&#039;s default locale.\\\\n    environment,\\\\n    clientKey\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set the amount on the Drop-in.\\\\n    .setAmount(amount) \\\\\\\/\\\\\\\/ Optional to show the amount on the Pay button.\\\\n    .build()&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Extend the &lt;code&gt;DropInService&lt;\\\/code&gt; class so that you can interact with Drop-in.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Implement methods to pass data between your client app and your server. You must also handle the &lt;code&gt;DropInServiceResult&lt;\\\/code&gt; which includes the result of the API requests from your server.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example DropInService implementation&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;java\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;class YourDropInService : DropInService() {\\\\n    \\\\\\\/\\\\\\\/ The handler to make a \\\\\\\/payments request.\\\\n    override fun onSubmit(state: PaymentComponentState&amp;lt;*&amp;gt;) {\\\\n        val paymentComponentJson = PaymentComponentData.SERIALIZER.serialize(state.data)\\\\n        \\\\\\\/\\\\\\\/ Your server makes a \\\\\\\/payments request, including `paymentComponentJson`.\\\\n        \\\\\\\/\\\\\\\/ This is used in 4: Make a payment.\\\\n\\\\n        \\\\\\\/\\\\\\\/ Create the `DropInServiceResult` based on the \\\\\\\/payments response.\\\\n        \\\\\\\/\\\\\\\/ You must switch to a background thread before making an API request. For example, `launch(Dispatchers.IO)` if using coroutines.\\\\n\\\\n        \\\\\\\/\\\\\\\/ If the payment finished, handle the result.\\\\n        sendResult(DropInServiceResult.Finished(\\\\\\&quot;YOUR_RESULT\\\\\\&quot;))\\\\n\\\\n        \\\\\\\/\\\\\\\/ If additional action is needed, handle the action.\\\\n        val action = Action.SERIALIZER.deserialize(actionJSONObject)\\\\n        sendResult(DropInServiceResult.Action(action))\\\\n    }\\\\n\\\\n    \\\\\\\/\\\\\\\/ Handler to make a \\\\\\\/payments\\\\\\\/details request to send additional payment details.\\\\n    override fun onAdditionalDetails(actionComponentData: ActionComponentData) {\\\\n        val actionComponentJson = ActionComponentData.SERIALIZER.serialize(actionComponentData)\\\\n        \\\\\\\/\\\\\\\/ Your server makes a \\\\\\\/payments\\\\\\\/details request, including `actionComponentJson`.\\\\n        \\\\\\\/\\\\\\\/ This is used in Step 5: Submit additional payment details.\\\\n\\\\n        \\\\\\\/\\\\\\\/ Create the `DropInServiceResult` based on the \\\\\\\/payments\\\\\\\/details response.\\\\n        sendResult(DropInServiceResult.Finished(\\\\\\&quot;YOUR_RESULT\\\\\\&quot;))\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Drop-in uses the &lt;code&gt;DropInServiceResult&lt;\\\/code&gt; to complete or dismiss the payment and determine if you need to handle additional actions. Additional actions include redirecting the shopper to another app or performing 3D Secure 2 authentication.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Add your &lt;code&gt;DropInService&lt;\\\/code&gt; to your manifest file.&lt;\\\/p&gt;\\n&lt;p&gt;For example:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-xml\\&quot;&gt;&amp;lt;service\\nandroid:name=\\&quot;.YourDropInService\\&quot;\\nandroid:exported=\\&quot;false\\&quot; \\\/&amp;gt;&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div class=\\&quot;accordion-shortcode adl-accordion adl-accordion--max-height-transition\\&quot; data-expand=\\&quot;true\\&quot; data-ignore=\\&quot;anchorjs-link\\&quot;&gt;\\n    \\n    &lt;div class=\\&quot;adl-accordion__item\\&quot; style=\\&quot;\\&quot;&gt;\\n        &lt;div tabindex=\\&quot;0\\&quot; role=\\&quot;item\\&quot; aria-expanded=\\&quot;false\\&quot; class=\\&quot;adl-accordion__header\\&quot;&gt;\\n            &lt;i class=\\&quot;adl-accordion__toggle adl-icon-chevron-down\\&quot;&gt;&lt;\\\/i&gt;\\n            &lt;div class=\\&quot;adl-accordion__title-wrapper\\&quot; data-accordion=\\&quot;#optional-configuration\\&quot;&gt;\\n                                    &lt;h3 class=\\&quot;adl-accordion__title\\&quot;&gt;Optional configuration&lt;\\\/h3&gt;\\n                            &lt;\\\/div&gt;\\n        &lt;\\\/div&gt;\\n        &lt;div role=\\&quot;region\\&quot; class=\\&quot;adl-accordion__content\\&quot;&gt;\\n            \\n&lt;p&gt;You can create configurations for individual payment methods and add them to the Drop-in configuration object. For example, to configure cards:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-java\\&quot;&gt;  \\\/\\\/ Create the card configuration object.\\n  val cardConfiguration = CardConfiguration.Builder(shopperLocale, environment, clientKey)\\n      .setHolderNameRequired(true)\\n      .build()\\n\\n  \\\/\\\/ Add the card configuration object to Drop-in configuration.\\n  val dropInConfiguration = DropInConfiguration.Builder(shopperLocale, environment, clientKey)\\n      .addCardConfiguration(cardConfiguration)\\n      .build()&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n\\n        &lt;\\\/div&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;60a5d670f081db5f49f007152694beca&quot;:&quot;&lt;h2 id=\\&quot;launch-and-show\\&quot;&gt;Launch and show Drop-in&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n\\n&lt;div id=\\&quot;tabBUhwf12417\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;12417&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;With Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Implement &amp;lt;code&amp;gt;DropInCallback&amp;lt;\\\\\\\/code&amp;gt; to get the final result.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Implement DropInCallback&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;override fun onDropInResult(dropInResult: DropInResult?) {\\\\\\\\n   when (dropInResult) {\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ The payment finishes with a result.\\\\\\\\n      is DropInResult.Finished -&amp;amp;gt; handleResult(dropInResult.result)\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ The shopper dismisses Drop-in.\\\\\\\\n      is DropInResult.CancelledByUser -&amp;amp;gt;\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Drop-in encounters an error.\\\\\\\\n      is DropInResult.Error -&amp;amp;gt; handleError(dropInResult.reason)\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Drop-in encounters an unexpected state.\\\\\\\\n      null -&amp;amp;gt;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Create the Drop-in launcher and call &amp;lt;code&amp;gt;DropIn.startPayment&amp;lt;\\\\\\\/code&amp;gt;, passing:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;dropInLauncher&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Drop-in launcher you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;paymentMethodsApiResponse&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The   &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/paymentMethods\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/paymentMethods&amp;lt;\\\\\\\/a&amp;gt; response that you deserialized.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;dropInConfiguration&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Drop-in configuration that you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;YourDropInService::class.java&amp;lt;\\\\\\\/code&amp;gt; (Example)&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The &amp;lt;code&amp;gt;DropInService&amp;lt;\\\\\\\/code&amp;gt; that you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;p&amp;gt;For example:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Start Drop-in&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import com.adyen.checkout.dropin.compose.startPayment\\\\\\\\nimport com.adyen.checkout.dropin.compose.rememberLauncherForDropInResult\\\\\\\\n\\\\\\\\n@Composable\\\\\\\\nprivate fun ComposableDropIn() {\\\\\\\\n    val dropInLauncher = rememberLauncherForDropInResult(dropInCallback)\\\\\\\\n\\\\\\\\n    DropIn.startPayment(dropInLauncher, paymentMethodsApiResponse, dropInConfiguration, YourDropInService::class.java)\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;compose-launch_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;compose&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Without Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Register your &amp;lt;code&amp;gt;Activity&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;Fragment&amp;lt;\\\\\\\/code&amp;gt; with the Activity Result API by calling &amp;lt;code&amp;gt;DropIn.registerForDropInResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Register your Activity or Fragment&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Declare this as a field in your Activity or Fragment.\\\\\\\\nprivate val dropInLauncher = DropIn.registerForDropInResult(this, dropInCallback)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Implement &amp;lt;code&amp;gt;DropInCallback&amp;lt;\\\\\\\/code&amp;gt; to get the final result.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Implement DropInCallback&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;override fun onDropInResult(dropInResult: DropInResult?) {\\\\\\\\n   when (dropInResult) {\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ The payment finishes with a result.\\\\\\\\n      is DropInResult.Finished -&amp;amp;gt; handleResult(dropInResult.result)\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ The shopper dismisses Drop-in.\\\\\\\\n      is DropInResult.CancelledByUser -&amp;amp;gt;\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Drop-in encounters an error.\\\\\\\\n      is DropInResult.Error -&amp;amp;gt; handleError(dropInResult.reason)\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Drop-in encounters an unexpected state.\\\\\\\\n      null -&amp;amp;gt;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Deserialize the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/paymentMethods\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/paymentMethods&amp;lt;\\\\\\\/a&amp;gt; response to a &amp;lt;code&amp;gt;PaymentMethodsApiResponse&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Deserialize the API response&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;val paymentMethodsApiResponse = PaymentMethodsApiResponse.SERIALIZER.deserialize(paymentMethodsResponseJSON)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol start=\\\\&amp;quot;4\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;li&amp;gt;Call &amp;lt;code&amp;gt;DropIn.startPayment&amp;lt;\\\\\\\/code&amp;gt;, passing:&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;context&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Your context.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;dropInLauncher&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Drop-in launcher you declared in your &amp;lt;code&amp;gt;Activity&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;Fragment&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;paymentMethodsApiResponse&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The   &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/paymentMethods\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/paymentMethods&amp;lt;\\\\\\\/a&amp;gt; response that you deserialized.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;dropInConfiguration&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Drop-in configuration that you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;YourDropInService::class.java&amp;lt;\\\\\\\/code&amp;gt; (Example)&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The &amp;lt;code&amp;gt;DropInService&amp;lt;\\\\\\\/code&amp;gt; that you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;p&amp;gt;For example:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Launch Drop-in&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;DropIn.startPayment(\\\\\\\\n    context,\\\\\\\\n    dropInLauncher,\\\\\\\\n    paymentMethodsApiResponse,\\\\\\\\n    dropInConfiguration,\\\\\\\\n    YourDropInService::class.java,\\\\\\\\n)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;no-compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;no-compose-launch_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;no-compose&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Your app shows Drop-in, and your shopper can choose a payment method.&lt;\\\/p&gt;&quot;,&quot;edf08374b59bbffa2a4017220c63438a&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper enters their payment details and selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, the &lt;code&gt;onSubmit&lt;\\\/code&gt; method in your &lt;code&gt;DropInService&lt;\\\/code&gt; class is called, passing the &lt;code&gt;paymentComponentJson&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;paymentComponentJson&lt;\\\/code&gt; object to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request, including:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;paymentComponentData.paymentMethod&lt;\\\/code&gt; from your client app.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;In case of a redirection, this is the URL to where your shopper is redirected after they complete the payment. Maximum length: 1024 characters. Get this URL from Drop-in in the &lt;code&gt;RedirectComponent.getReturnUrl(context)&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/partners\\\/application-information\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some &lt;a href=\\&quot;\\\/partners\\\/application-information\\&quot;&gt;basic identifying information&lt;\\\/a&gt;, so that we can offer you better support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;checkoutAttemptId&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt; generated by Drop-in to track the user payment journey. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;You must include additional parameters in your payment request to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrate some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Use &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/android-drop-in#create-a-token\\&quot;&gt;Tokenize your shopper&#039;s payment details&lt;\\\/a&gt; or &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/android-drop-in#make-a-payment-with-a-token\\&quot;&gt;make recurring payments&lt;\\\/a&gt;.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;For example, to make a payment request for &lt;strong&gt;EUR&amp;nbsp;10&lt;\\\/strong&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;payments-request-component-android&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .returnUrl(\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  ReturnUrl = \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: \\\\&amp;quot;STATE_DATA\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  ReturnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: \\\\&amp;quot;STATE_DATA\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; &#039;STATE_DATA&#039;,\\\\n  :returnUrl =&amp;gt; &#039;adyencheckout:\\\\\\\/\\\\\\\/your.package.name&#039;,\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Error handling&lt;\\\/h3&gt;\\n&lt;p&gt;If the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request fails, return &lt;code&gt;DropInServiceResult.Error&lt;\\\/code&gt; to your client app, including the &lt;code&gt;action&lt;\\\/code&gt; object.&lt;\\\/p&gt;&quot;,&quot;44fe21aa772f647e2786be9f80907025&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Deserialize the &lt;code&gt;action&lt;\\\/code&gt; object it and pass it to Drop-in.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Pass the full &lt;code&gt;action&lt;\\\/code&gt; object from your server to Drop-in.&lt;\\\/li&gt;\\n&lt;li&gt;Use &lt;code&gt;ActionResponse.SERIALIZER&lt;\\\/code&gt; to deserialize the &lt;code&gt;action&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Return it as &lt;code&gt;DropInServiceResult.Action&lt;\\\/code&gt; to Drop-in.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in handles the additional action on the client side.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;You handle the payment data, depending on the type of action (&lt;code&gt;action.type&lt;\\\/code&gt;).&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, Drop-in redirects your shopper to another website to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;When the shopper returns to your app, Drop-in calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; method in your &lt;code&gt;DropInService&lt;\\\/code&gt; class.&lt;\\\/li&gt;\\n&lt;li&gt;From &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;, get the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object.`&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object from your client app to your server.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;If the shopper fails to return to your app, you do not get the additional data to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; method in your &lt;code&gt;DropInService&lt;\\\/code&gt; class.&lt;\\\/li&gt;\\n&lt;li&gt;From &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;, get the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object from your client app to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must use a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows the QR code to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;When the shopper uses the QR code to complete the payment, Drop-in calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; method in your &lt;code&gt;DropInService&lt;\\\/code&gt; class.&lt;\\\/li&gt;\\n&lt;li&gt;From &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;, get the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object from your client app to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows a different UI in an overlay.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper uses the UI overlay to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; method in your &lt;code&gt;DropInService&lt;\\\/code&gt; class.&lt;\\\/li&gt;\\n&lt;li&gt;From &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;, get the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object from your client app to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows the voucher to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;When the shopper completes the additional action with the voucher (for example: saving it to their digital wallet or forwarding it to their email), Drop-in calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; method in your &lt;code&gt;DropInService&lt;\\\/code&gt; class.&lt;\\\/li&gt;\\n&lt;li&gt;From &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;, get the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object from your client app to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows the instructions for the additional action to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper does the additional action.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; method in your &lt;code&gt;DropInService&lt;\\\/code&gt; class.&lt;\\\/li&gt;\\n&lt;li&gt;From &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;, get the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object from your client app to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;b8951d6567ce5ce24688adb253c699fa&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request including the full data from the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;details-request-component&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{hint:object passed from your client app}STATE_DATA{\\\\\\\/hint}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nString xApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nClient client = new Client(xApiKey,Environment.TEST);\\\\nCheckout checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nPaymentsDetailsRequest paymentsDetailsRequest = STATE_DATA;\\\\nPaymentsResponse paymentsDetailsResponse = checkout.paymentsDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\n$params = STATE_DATA;\\\\n$result = $service-&amp;gt;paymentsDetails($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed.\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from the client app, deserialized from JSON to a data structure.\\\\nvar paymentsDetailsRequest = STATE_DATA;\\\\nvar paymentsDetailsResponse = checkout.PaymentDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;[ADYEN_API_KEY]&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\ncheckout.paymentsDetails(STATE_DATA).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;[ADYEN_API_KEY]\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nreq := STATE_DATA;\\\\nres, httpRes, err := client.Checkout.PaymentsDetails(&amp;amp;req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresult = adyen.checkout.payments_details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresponse = adyen.checkout.payments.details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client\\\\n   puts response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode to your client\\\\n   puts response.body[:resultCode]\\\\nend&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response from your server to your client app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;986296cfd4a410e95db4c9eb425186d7&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After Drop-in finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;\\n  &lt;code&gt;resultCode&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in a webhook with &lt;code&gt;eventCode&lt;\\\/code&gt;: &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt;. Use this to update your order management system.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;:&quot;&lt;h2 id=\\&quot;test-and-go-live\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0&lt;a href=\\&quot;\\\/development-resources\\\/testing\\&quot;&gt;test your integration&lt;\\\/a&gt;. Use the &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers#android-test-cards-app\\&quot;&gt;Adyen Android test cards app&lt;\\\/a&gt; to access, copy, and autofill card details from within your Android device. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. Review the process to start accepting payments on &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?=1#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.\\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Load  from one of our live environments and set the &lt;code&gt;environment&lt;\\\/code&gt; to match your live endpoints:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;Value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe (EU) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;EUROPE&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;United States (US) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;UNITED_STATES&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia (AU) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;AUSTRALIA&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Asia Pacific &amp;amp; Southeast (APSE) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;APSE&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;India (IN) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;INDIA&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;041aeb2e23cf7f79e404760212cef830&quot;:&quot;&lt;h2&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps38775\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Modify payments&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/add-payment-methods\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Tokenization&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Save shopper payment details for later payments.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;a88b0f7b5afbd30d0b21a2de698b3051&quot;:&quot;&lt;h2 id=\\&quot;how-it-works\\&quot;&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Drop-in integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a rel=\\&quot;lightbox\\&quot; href=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/android\\\/5-0-0\\\/drop-in\\\/01.how-it-works\\\/drop-in-flow.jpg\\&quot; src=\\&quot;\\&quot;&gt;\\n  &lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/android\\\/5-0-0\\\/drop-in\\\/01.how-it-works\\\/drop-in-flow.jpg\\&quot; \\\/&gt;\\n&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, submit a request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#configure\\&quot;&gt;Configure&lt;\\\/a&gt; and &lt;a href=\\&quot;#launch-and-show\\&quot;&gt;launch&lt;\\\/a&gt; Drop-in to collect the shopper&#039;s details.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment request&lt;\\\/a&gt; with data that you receive from Drop-in.&lt;\\\/li&gt;\\n&lt;li&gt;Handle &lt;a href=\\&quot;#handle-action-object\\&quot;&gt;additional client-side actions&lt;\\\/a&gt;, if required.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;send additional payment details&lt;\\\/a&gt; with data you receive from Drop-in, if required.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt; to inform the shopper and update your order management system.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps99339\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#set-up\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;5f2919517cd3d618153aad9093b0acf0&quot;:&quot;&lt;h2 id=\\&quot;set-up\\&quot;&gt;Set up Drop-in&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;1: Import the library&lt;\\\/h3&gt;\\n&lt;p&gt;The default implementation is with Jetpack Compose, but you can import the library without Jetpack Compose instead.&lt;\\\/p&gt;\\n&lt;p&gt;Import the compatibility module in your &lt;code&gt;build.gradle&lt;\\\/code&gt; file:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tab92WXg95967\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;95967&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;With Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Import the module with Compose&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;groovy\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;implementation \\\\\\\\\\\\&amp;quot;com.adyen.checkout:drop-in-compose:YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;compose-import_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;compose&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Without Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Import the module without Compose&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;groovy\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;implementation \\\\\\\\\\\\&amp;quot;com.adyen.checkout:drop-in:YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;no-compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;no-compose-import_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;no-compose&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;7a85ec81e35cfd3c0ea2eec2e02bf91a&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;2: Create the configuration object&lt;\\\/h3&gt;\\n&lt;p&gt;Create the configuration object to pass when you launch and show Drop-in.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Set the following properties in the configuration object: &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Property&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you want to show the amount on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;td&gt;The currency and value of the payment amount shown on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;code&gt;Environment.TEST&lt;\\\/code&gt; for testing. When going live, use one of our live environments.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your client key.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. By default, this is the device&#039;s locale.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Add additional configuration to this object. Some &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment methods&lt;\\\/a&gt; require additional configuration, and you can add optional configuration for Drop-in.&lt;\\\/p&gt;\\n&lt;p&gt;For example, to configure for a payment of 10 EUR:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example configuration&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;kotlin\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ Create the amount object.\\\\nval amount = Amount(\\\\n  currency = \\\\\\&quot;EUR\\\\\\&quot;,\\\\n  value = 1000, \\\\\\\/\\\\\\\/ Value in minor units.\\\\n)\\\\n\\\\n\\\\\\\/\\\\\\\/ Create a configuration object\\\\nval checkoutConfiguration = CheckoutConfiguration(\\\\n  environment = environment,\\\\n  clientKey = clientKey,\\\\n  shopperLocale = shopperLocale, \\\\\\\/\\\\\\\/ Optional\\\\n  amount = amount, \\\\\\\/\\\\\\\/ Optional: set this to show the amount on the Pay button.\\\\n) {\\\\n  \\\\\\\/\\\\\\\/ Optional: add Drop-in configuration.\\\\n  dropIn {\\\\n      setEnableRemovingStoredPaymentMethods(true)\\\\n  }\\\\n\\\\n  \\\\\\\/\\\\\\\/ Optional: add or change default configuration for the card payment method.\\\\n  card {\\\\n      setHolderNameRequired(true)\\\\n      setShopperReference(\\\\\\&quot;...\\\\\\&quot;)\\\\n  }\\\\n\\\\n  \\\\\\\/\\\\\\\/ Optional: add or change default configuration for 3D Secure 2.\\\\n  adyen3DS2 {\\\\n      setThreeDSRequestorAppURL(\\\\\\&quot;...\\\\\\&quot;)\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Extend the &lt;code&gt;DropInService&lt;\\\/code&gt; class so that you can interact with Drop-in.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Implement methods to pass data between your client app and your server. You must also handle the &lt;code&gt;DropInServiceResult&lt;\\\/code&gt; which includes the result of the API requests from your server.&lt;\\\/p&gt;\\n&lt;p&gt;For example:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example DropInService implementation&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;kotlin\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;class YourDropInService : DropInService() {\\\\n    \\\\\\\/\\\\\\\/ The handler to make a \\\\\\\/payments request.\\\\n    override fun onSubmit(state: PaymentComponentState&amp;lt;*&amp;gt;) {\\\\n        val paymentComponentJson = PaymentComponentData.SERIALIZER.serialize(state.data)\\\\n        \\\\\\\/\\\\\\\/ Your server makes a \\\\\\\/payments request, including `paymentComponentJson`.\\\\n        \\\\\\\/\\\\\\\/ This is used in 4: Make a payment.\\\\n\\\\n        \\\\\\\/\\\\\\\/ Create the `DropInServiceResult` based on the \\\\\\\/payments response.\\\\n        \\\\\\\/\\\\\\\/ You must switch to a background thread before making an API request. For example, `launch(Dispatchers.IO)` if using coroutines.\\\\n\\\\n        \\\\\\\/\\\\\\\/ If the payment finished, handle the result.\\\\n        sendResult(DropInServiceResult.Finished(\\\\\\&quot;YOUR_RESULT\\\\\\&quot;))\\\\n\\\\n        \\\\\\\/\\\\\\\/ If additional action is needed, handle the action.\\\\n        val action = Action.SERIALIZER.deserialize(actionJSONObject)\\\\n        sendResult(DropInServiceResult.Action(action))\\\\n    }\\\\n\\\\n    \\\\\\\/\\\\\\\/ Handler to make a \\\\\\\/payments\\\\\\\/details request to send additional payment details.\\\\n    override fun onAdditionalDetails(actionComponentData: ActionComponentData) {\\\\n        val actionComponentJson = ActionComponentData.SERIALIZER.serialize(actionComponentData)\\\\n        \\\\\\\/\\\\\\\/ Your server makes a \\\\\\\/payments\\\\\\\/details request, including `actionComponentJson`.\\\\n        \\\\\\\/\\\\\\\/ This is used in Step 5: Submit additional payment details.\\\\n\\\\n        \\\\\\\/\\\\\\\/ Create the `DropInServiceResult` based on the \\\\\\\/payments\\\\\\\/details response.\\\\n        sendResult(DropInServiceResult.Finished(\\\\\\&quot;YOUR_RESULT\\\\\\&quot;))\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Drop-in uses the &lt;code&gt;DropInServiceResult&lt;\\\/code&gt; to complete or dismiss the payment and determine if you need to handle additional actions. Additional actions include redirecting the shopper to another app or performing 3D Secure 2 authentication.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Add your &lt;code&gt;DropInService&lt;\\\/code&gt; to your manifest file.&lt;\\\/p&gt;\\n&lt;p&gt;For example:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-xml\\&quot;&gt;&amp;lt;service\\nandroid:name=\\&quot;.YourDropInService\\&quot;\\nandroid:exported=\\&quot;false\\&quot; \\\/&amp;gt;&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;ff82cb86d21478554a82f924e6a63212&quot;:&quot;&lt;h3 id=\\&quot;launch-and-show\\&quot;&gt;Launch and show Drop-in&lt;\\\/h3&gt;\\n\\n&lt;div id=\\&quot;tabwnSkJ22327\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;22327&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;With Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Implement &amp;lt;code&amp;gt;DropInCallback&amp;lt;\\\\\\\/code&amp;gt; to get the final result.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Implement DropInCallback&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;override fun onDropInResult(dropInResult: DropInResult?) {\\\\\\\\n   when (dropInResult) {\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ The payment finishes with a result.\\\\\\\\n      is DropInResult.Finished -&amp;amp;gt; handleResult(dropInResult.result)\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ The shopper dismisses Drop-in.\\\\\\\\n      is DropInResult.CancelledByUser -&amp;amp;gt;\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Drop-in encounters an error.\\\\\\\\n      is DropInResult.Error -&amp;amp;gt; handleError(dropInResult.reason)\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Drop-in encounters an unexpected state.\\\\\\\\n      null -&amp;amp;gt;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Create the Drop-in launcher and call &amp;lt;code&amp;gt;DropIn.startPayment&amp;lt;\\\\\\\/code&amp;gt;, passing:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;dropInLauncher&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Drop-in launcher you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;paymentMethodsApiResponse&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The   &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/paymentMethods\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/paymentMethods&amp;lt;\\\\\\\/a&amp;gt; response that you deserialized.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;checkoutConfiguration&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Drop-in configuration that you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;YourDropInService::class.java&amp;lt;\\\\\\\/code&amp;gt; (Example)&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The &amp;lt;code&amp;gt;DropInService&amp;lt;\\\\\\\/code&amp;gt; that you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;p&amp;gt;For example:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Start Drop-in&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import com.adyen.checkout.dropin.compose.startPayment\\\\\\\\nimport com.adyen.checkout.dropin.compose.rememberLauncherForDropInResult\\\\\\\\n\\\\\\\\n@Composable\\\\\\\\nprivate fun ComposableDropIn() {\\\\\\\\n    val dropInLauncher = rememberLauncherForDropInResult(dropInCallback)\\\\\\\\n\\\\\\\\n    DropIn.startPayment(dropInLauncher, paymentMethodsApiResponse, checkoutConfiguration, YourDropInService::class.java)\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;compose-launch_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;compose&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Without Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Register your &amp;lt;code&amp;gt;Activity&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;Fragment&amp;lt;\\\\\\\/code&amp;gt; with the Activity Result API by calling &amp;lt;code&amp;gt;DropIn.registerForDropInResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Register your Activity or Fragment&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Declare this as a field in your Activity or Fragment.\\\\\\\\nprivate val dropInLauncher = DropIn.registerForDropInResult(this, dropInCallback)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Implement &amp;lt;code&amp;gt;DropInCallback&amp;lt;\\\\\\\/code&amp;gt; to get the final result.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Implement DropInCallback&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;override fun onDropInResult(dropInResult: DropInResult?) {\\\\\\\\n   when (dropInResult) {\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ The payment finishes with a result.\\\\\\\\n      is DropInResult.Finished -&amp;amp;gt; handleResult(dropInResult.result)\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ The shopper dismisses Drop-in.\\\\\\\\n      is DropInResult.CancelledByUser -&amp;amp;gt;\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Drop-in encounters an error.\\\\\\\\n      is DropInResult.Error -&amp;amp;gt; handleError(dropInResult.reason)\\\\\\\\n      \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Drop-in encounters an unexpected state.\\\\\\\\n      null -&amp;amp;gt;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Deserialize the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/paymentMethods\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/paymentMethods&amp;lt;\\\\\\\/a&amp;gt; response to a &amp;lt;code&amp;gt;PaymentMethodsApiResponse&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Deserialize the API response&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;val paymentMethodsApiResponse = PaymentMethodsApiResponse.SERIALIZER.deserialize(paymentMethodsResponseJSON)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol start=\\\\&amp;quot;4\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;li&amp;gt;Call &amp;lt;code&amp;gt;DropIn.startPayment&amp;lt;\\\\\\\/code&amp;gt;, passing:&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;context&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Your context.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;dropInLauncher&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The Drop-in launcher you declared in your &amp;lt;code&amp;gt;Activity&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;Fragment&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;paymentMethodsApiResponse&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The   &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/paymentMethods\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/paymentMethods&amp;lt;\\\\\\\/a&amp;gt; response that you deserialized.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;checkoutConfiguration&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The checkout configuration that you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;YourDropInService::class.java&amp;lt;\\\\\\\/code&amp;gt; (Example)&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The &amp;lt;code&amp;gt;DropInService&amp;lt;\\\\\\\/code&amp;gt; that you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;p&amp;gt;For example:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Launch Drop-in&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;DropIn.startPayment(\\\\\\\\n    context,\\\\\\\\n    dropInLauncher,\\\\\\\\n    paymentMethodsApiResponse,\\\\\\\\n    checkoutConfiguration,\\\\\\\\n    YourDropInService::class.java,\\\\\\\\n)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;no-compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;no-compose-launch_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;no-compose&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Your app shows Drop-in, and your shopper can choose a payment method.&lt;\\\/p&gt;&quot;,&quot;872ff649233d770d6c207529542c48ee&quot;:&quot;&lt;h2 id=\\&quot;set-up\\&quot;&gt;Set up Drop-in&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;1: Import the library&lt;\\\/h3&gt;\\n&lt;p&gt;The default implementation is with Jetpack Compose, but you can import the library without Jetpack Compose instead.&lt;\\\/p&gt;\\n&lt;p&gt;Import the compatibility module in your &lt;code&gt;build.gradle&lt;\\\/code&gt; file:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabqoZmu29843\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;29843&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;With Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Import the module with Compose&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;groovy\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;implementation \\\\\\\\\\\\&amp;quot;com.adyen.checkout:drop-in-compose:YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;compose-import_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;compose&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Without Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Import the module without Compose&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;groovy\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;implementation \\\\\\\\\\\\&amp;quot;com.adyen.checkout:drop-in:YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;no-compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;no-compose-import_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;no-compose&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;50c8e0cf7c785439f8bf2bf635fb82e8&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper enters their payment details and selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, the &lt;code&gt;onSubmit&lt;\\\/code&gt; method in your &lt;code&gt;DropInService&lt;\\\/code&gt; class is called, passing the &lt;code&gt;paymentComponentJson&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;paymentComponentJson&lt;\\\/code&gt; object to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The complete &lt;code&gt;paymentComponentData.paymentMethod&lt;\\\/code&gt; object from your client app that includes the payment method details and other required information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The object that includes information collected by Drop-in to track the user&#039;s payment journey, including information like the &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt;. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;In case of a redirection, this is the URL to where your shopper is redirected after they complete the payment. Maximum length: 1024 characters. Get this URL from Drop-in in the &lt;code&gt;RedirectComponent.getReturnUrl(context)&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/partners\\\/application-information\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some &lt;a href=\\&quot;\\\/partners\\\/application-information\\&quot;&gt;basic identifying information&lt;\\\/a&gt;, so that we can offer you better support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;You must include additional parameters in your payment request to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrate some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Use &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/android-drop-in#create-a-token\\&quot;&gt;Tokenize your shopper&#039;s payment details&lt;\\\/a&gt; or &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/android-drop-in#make-a-payment-with-a-token\\&quot;&gt;make recurring payments&lt;\\\/a&gt;.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;For example, to make a payment request for &lt;strong&gt;EUR&amp;nbsp;10&lt;\\\/strong&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;payments-request-component-android&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .returnUrl(\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  ReturnUrl = \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: \\\\&amp;quot;STATE_DATA\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  ReturnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: \\\\&amp;quot;STATE_DATA\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; &#039;STATE_DATA&#039;,\\\\n  :returnUrl =&amp;gt; &#039;adyencheckout:\\\\\\\/\\\\\\\/your.package.name&#039;,\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Error handling&lt;\\\/h3&gt;\\n&lt;p&gt;If the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request fails, return &lt;code&gt;DropInServiceResult.Error&lt;\\\/code&gt; to your client app, including the &lt;code&gt;action&lt;\\\/code&gt; object.&lt;\\\/p&gt;&quot;}},&quot;components&quot;:{&quot;label&quot;:&quot;Components&quot;,&quot;description&quot;:&quot;Use our customizable UI components&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;Android Components&lt;\\\/h2&gt;\\n&lt;p&gt;Render individual payment methods anywhere in your app.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=android%20components\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Low development time to integrate each payment method component&lt;\\\/li&gt;\\n&lt;li&gt;UI styling customization for each payment method&lt;\\\/li&gt;\\n&lt;li&gt;Flexibility to add payment method components with configuration for each&lt;\\\/li&gt;\\n&lt;li&gt;3D Secure 2 support using the 3D Secure 2 Component&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;visual_images&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/android\\\/components\\\/visual\\\/android-components.svg&quot;,&quot;external_content&quot;:&quot;&lt;h3&gt;Adyen Android on GitHub&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-android\\&quot;&gt;View the Adyen Android repository&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-android\\\/tree\\\/main\\\/example-app\\&quot;&gt;View our example integration&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/adyen.github.io\\\/adyen-android\\\/index.html\\&quot;&gt;View the code explorer on GitHub Pages&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;external_icon&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/android\\\/github\\\/github-mark.png&quot;,&quot;versions&quot;:{&quot;version-5.17.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;8bd42b93c453d9e401b5b63b0eb693b9&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.17.0&quot;}},&quot;version-5.16.1&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;8bd42b93c453d9e401b5b63b0eb693b9&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.1&quot;}},&quot;version-5.16.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;8bd42b93c453d9e401b5b63b0eb693b9&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-5.15.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.15.0&quot;}},&quot;version-5.14.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.14.0&quot;}},&quot;version-5.13.1&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.13.1&quot;}},&quot;version-5.13.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.13.0&quot;}},&quot;version-5.12.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.12.0&quot;}},&quot;version-5.11.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.11.0&quot;}},&quot;version-5.10.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.10.0&quot;}},&quot;version-5.9.1&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.9.1&quot;}},&quot;version-5.9.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.9.0&quot;}},&quot;version-5.8.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.8.0&quot;}},&quot;version-5.7.1&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.7.1&quot;}},&quot;version-5.7.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.7.0&quot;}},&quot;version-5.6.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.6.0&quot;}},&quot;version-5.5.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.5.0&quot;}},&quot;version-5.4.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.4.0&quot;}},&quot;version-5.3.1&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.3.1&quot;}},&quot;version-5.3.0&quot;:{&quot;sections&quot;:{&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;135d10ae680cc2edd19815d59e5cf592&quot;},&quot;launch_and_show_drop_in&quot;:{&quot;$ref&quot;:&quot;335861f0b97ac85c8ae37248fe31c96f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.3.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-5.2.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6babaa1f58577c831c78ab1e93069f68&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;5e6f829c7a80815cc5a37a688dd7b3fe&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;efce705da238368693da40652a9e0fd4&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;9a1125a563ee54e80a8d4ea94dee38db&quot;},&quot;launch_and_show_component&quot;:{&quot;$ref&quot;:&quot;faeb2235b786c985a56de15fb48cd74f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.2.0&quot;}},&quot;version-5.1.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6babaa1f58577c831c78ab1e93069f68&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;5e6f829c7a80815cc5a37a688dd7b3fe&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;efce705da238368693da40652a9e0fd4&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;9a1125a563ee54e80a8d4ea94dee38db&quot;},&quot;launch_and_show_component&quot;:{&quot;$ref&quot;:&quot;faeb2235b786c985a56de15fb48cd74f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;5.1.0&quot;}},&quot;version-5.0.0&quot;:{&quot;sections&quot;:{&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;6babaa1f58577c831c78ab1e93069f68&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;5e6f829c7a80815cc5a37a688dd7b3fe&quot;},&quot;get_payment_methods&quot;:{&quot;$ref&quot;:&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;},&quot;configure_drop_in&quot;:{&quot;$ref&quot;:&quot;efce705da238368693da40652a9e0fd4&quot;},&quot;create_configuration_object&quot;:{&quot;$ref&quot;:&quot;9a1125a563ee54e80a8d4ea94dee38db&quot;},&quot;launch_and_show_component&quot;:{&quot;$ref&quot;:&quot;faeb2235b786c985a56de15fb48cd74f&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;9a243607f68c5ea180402abceee677c1&quot;},&quot;handle_additional_action&quot;:{&quot;$ref&quot;:&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;},&quot;send_additional_details&quot;:{&quot;$ref&quot;:&quot;b8951d6567ce5ce24688adb253c699fa&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;131c281f7efab619805aa7971dcc7b4e&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;5.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-4.13.6&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.6&quot;}},&quot;version-4.13.5&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.5&quot;}},&quot;version-4.13.4&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.4&quot;}},&quot;version-4.13.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.3&quot;}},&quot;version-4.13.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.2&quot;}},&quot;version-4.13.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.1&quot;}},&quot;version-4.13.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.13.0&quot;}},&quot;version-4.12.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.12.1&quot;}},&quot;version-4.12.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.12.0&quot;}},&quot;version-4.11.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.11.0&quot;}},&quot;version-4.10.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.10.0&quot;}},&quot;version-4.9.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.9.1&quot;}},&quot;version-4.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.9.0&quot;}},&quot;version-4.8.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.8.0&quot;}},&quot;version-4.7.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.7.1&quot;}},&quot;version-4.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.7.0&quot;}},&quot;version-4.6.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;4.6.1&quot;}},&quot;version-4.6.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;04531948e1d82c1a43845fd27314efb3&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;c522b83ce8f587ee428d393b70138a09&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;},&quot;collect_payment_details&quot;:{&quot;$ref&quot;:&quot;2774061ae82b5e5c6e42af35b2c97144&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;6dc8f95d929fd3138f47e31adf31559d&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;0ad7ccce4d5afff119502483e202e004&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;3697f3ac82275151db962242359820a1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;b605a73292450004c341b95eeabe04cd&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;4.6.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;6c1a1f5f78f7f2a2fb49337140010fa6&quot;:&quot;&lt;p&gt;Components are building blocks that you can use to render UI for individual payment methods: from collecting payment details to handling additional shopper interaction.&lt;\\\/p&gt;\\n&lt;p&gt;We recommend that you integrate Components if you want some degree of customization and flexibility on your payments form.&lt;\\\/p&gt;&quot;,&quot;04531948e1d82c1a43845fd27314efb3&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you begin to integrate, make sure you have followed the &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen guide&lt;\\\/a&gt; to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Get an overview of the steps needed to accept live payments.&lt;\\\/li&gt;\\n&lt;li&gt;Create your test account.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After you have created your test account:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt; to know the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3 id=\\&quot;install\\&quot;&gt;Install the Adyen Android client-side library&lt;\\\/h3&gt;\\n&lt;p&gt;Our Android Components are available through &lt;a href=\\&quot;https:\\\/\\\/repo1.maven.org\\\/maven2\\\/com\\\/adyen\\\/checkout\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Maven Central&lt;\\\/a&gt;. You only need to add the build dependency for the specific Android Component on Gradle. To know the specific Component name, refer to the &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method pages&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;For example, to use the &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/android-component\\&quot;&gt;Card Component&lt;\\\/a&gt; and the &lt;a href=\\&quot;#redirect-component\\&quot;&gt;Redirect Component&lt;\\\/a&gt;, add the following to your &lt;code&gt;build.gradle&lt;\\\/code&gt; (Module) file. To get the latest version, check our &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-android\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;GitHub repository&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-groovy\\&quot;&gt;implementation \\&quot;com.adyen.checkout:card:&amp;lt;latest-version&amp;gt;\\&quot;\\nimplementation \\&quot;com.adyen.checkout:redirect:&amp;lt;latest-version&amp;gt;\\&quot;&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;h3&gt;Get your client key&lt;\\\/h3&gt;\\n&lt;p&gt;All Components require a client key. To get your client key:  1. Log in to your &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Go to &lt;strong&gt;Developers&lt;\\\/strong&gt; &amp;gt; &lt;strong&gt;API credentials&lt;\\\/strong&gt;, and select the API credential for your integration, for example &lt;strong&gt;ws@Company.[YourCompanyAccount]&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Under &lt;strong&gt;Authentication&lt;\\\/strong&gt;, select &lt;strong&gt;Generate New Client Key&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Select &lt;strong&gt;Save&lt;\\\/strong&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h2 id=\\&quot;set-up\\&quot;&gt;Set up Components&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Build a client-side configuration of the Component for the payment method you are offering. You will use this configuration object in Step 3.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The default value is &lt;strong&gt;TEST&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our live environments.\\u00a0&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;ClientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;ShopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, the Component is rendered in the language set for the device. To change the language, set the shopper locale to the &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-android\\\/tree\\\/main\\\/card\\\/src\\\/main\\\/res\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;required language code&lt;\\\/a&gt;. You also need to set the shopper locale when you make the &lt;a href=\\&quot;\\\/online-payments\\\/android\\\/components#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; call&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Other configuration&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Optional configuration for the specific payment method. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-kotlin\\&quot;&gt; \\\/\\\/ Replace Card with the Component you want to configure.\\n val cardConfiguration =\\n      CardConfiguration.Builder(context, \\&quot;YOUR_CLIENT_KEY\\&quot;)\\n      \\\/\\\/ When you are ready to accept live payments, change the value to one of our live environments.\\n      .setEnvironment(Environment.TEST)\\n      \\\/\\\/ Optional. Use to set the language rendered in Component, overriding the default device language setting.\\n      \\\/\\\/ See list of supported languages at https:\\\/\\\/github.com\\\/Adyen\\\/adyen-android\\\/tree\\\/main\\\/card\\\/src\\\/main\\\/res\\n      .setShopperLocale(Locale(\\&quot;nl\\&quot;, \\&quot;NL\\&quot;))\\n      \\\/\\\/ Create the configuration for the payment method that you want to add.\\n      .build()&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Add the Component view to your layout. You will attach the initialized component to this view in Step 3.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-xml\\&quot;&gt;&amp;lt;!-- Replace card with the Component view that you want to add --&amp;gt;\\n&amp;lt;!--  See list of supported payment methods at https:\\\/\\\/docs.adyen.com\\\/online-payments\\\/supported-payment-methods--&amp;gt;\\n&amp;lt;com.adyen.checkout.card.CardView\\n     android:id=\\&quot;@+id\\\/YOUR_COMPONENT_VIEW_ID\\&quot;\\n     ...\\\/&amp;gt;&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;c522b83ce8f587ee428d393b70138a09&quot;:&quot;&lt;h2 id=\\&quot;how-it-works\\&quot;&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Components integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#set-up-components\\&quot;&gt;Set up Components&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, submit a request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#collect-payment-details\\&quot;&gt;Collect payment details from the shopper&lt;\\\/a&gt; and pass the details to your server.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;submit a payment request&lt;\\\/a&gt; with the data returned by the Component.&lt;\\\/li&gt;\\n&lt;li&gt;Determine from the response if you need to &lt;a href=\\&quot;#additional-action\\&quot;&gt;perform additional actions on your client app&lt;\\\/a&gt;, such as to redirect the shopper to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;submit additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps59793\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#collect-payment-details\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n\\n&lt;p&gt;To add a new payment method, you need to add the specific Component on your checkout page. The steps for integrating are similar regardless of the payment method, but some require additional configuration. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods#supported-payment-methods-for-each-integration-type\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/p&gt;&quot;,&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabCHPSg14040\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;14040&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;dc1eecce9d5ac322310ea0a97313b43c&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.&lt;\\\/p&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/#\\\/CheckoutService\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The platform where the payment is taking place. Use &lt;strong&gt;Android&lt;\\\/strong&gt;. Adyen returns only the payment methods available for Android.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. Adyen returns only the payment methods available in this country. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, the &lt;code&gt;shopperlocale&lt;\\\/code&gt; is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code. You also need to set the same &lt;code&gt;ShopperLocale&lt;\\\/code&gt; within your Component configuration.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;advanced-flow-post-payment-methods-request&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Android&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available &lt;code&gt;paymentMethods&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&amp;lt;code&amp;gt;\\\/paymentMethods&amp;lt;\\\/code&amp;gt; response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;Cards\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;scheme\\\\\\&quot;\\\\n    ...\\\\n  },\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n  },\\\\n  ...\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Pass the response to your client app. You will use this in the next step to present which payment methods are available to the shopper.&lt;\\\/p&gt;&quot;,&quot;2774061ae82b5e5c6e42af35b2c97144&quot;:&quot;&lt;h2 id=\\&quot;collect-payment-details\\&quot;&gt;Collect payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the Component in your client app to collect payment details from your shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Deserialize the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response with the &lt;code&gt;SERIALIZER&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-kotlin\\&quot;&gt;val paymentMethodsApiResponse = PaymentMethodsApiResponse.SERIALIZER.deserialize(paymentMethodsResponse)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the result, get the object containing the payment method &lt;code&gt;type&lt;\\\/code&gt; for the Component. For example, to initialize the &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/android-component\\&quot;&gt;Card Component&lt;\\\/a&gt;, get the object containing &lt;code&gt;paymentMethods.type&lt;\\\/code&gt; &lt;strong&gt;scheme&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Initialize an instance of the Component. To do this, you need to call &lt;code&gt;PROVIDER.get&lt;\\\/code&gt; from your payment method&#039;s Component and pass the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;The context (for example, &lt;code&gt;this@YourActivity&lt;\\\/code&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;The &lt;code&gt;PaymentMethod&lt;\\\/code&gt; object (for example, &lt;code&gt;paymentMethod&lt;\\\/code&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;The component configuration object (for example, &lt;code&gt;cardConfiguration&lt;\\\/code&gt;)&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-kotlin\\&quot;&gt;\\\/\\\/ Replace CardComponent with the payment method Component that you want to add.\\n\\\/\\\/ See list of supported payment methods at https:\\\/\\\/docs.adyen.com\\\/online-payments\\\/supported-payment-methods\\nval cardComponent = CardComponent.PROVIDER.get(this@YourActivity, paymentMethod, cardConfiguration)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Attach the Component to the view to start getting your shopper&#039;s payment details. You need to call &lt;code&gt;attach&lt;\\\/code&gt; from the payment method&#039;s Component view and pass in two things:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;the component object (for example, &lt;code&gt;cardComponent&lt;\\\/code&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;the context (for example, &lt;code&gt;this@YourActivity&lt;\\\/code&gt;)&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-kotlin\\&quot;&gt;\\\/\\\/ Replace CardComponent with the payment method Component that you want to add.\\n\\\/\\\/ See list of supported payment methods at https:\\\/\\\/docs.adyen.com\\\/online-payments\\\/supported-payment-methods\\ncardView.attach(cardComponent, this@YourActivity)&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;You start receiving updates when the shopper enters their payment details. Check if &lt;code&gt;isValid&lt;\\\/code&gt; is &lt;strong&gt;true&lt;\\\/strong&gt;, and if the shopper proceeds to pay, pass the &lt;code&gt;paymentComponentState.data.paymentMethod&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-kotlin\\&quot;&gt;\\\/\\\/ Replace CardComponent with the payment method Component that you want to add.\\n\\\/\\\/ See list of supported payment methods at https:\\\/\\\/docs.adyen.com\\\/online-payments\\\/supported-payment-methods\\ncardComponent.observe(this@MainActivity) { state -&amp;gt;\\n    if (state?.isValid == true) {\\n        \\\/\\\/serialize data\\n        val paymentComponentData = PaymentComponentData.SERIALIZER.serialize(state.data)\\n        \\\/\\\/ When the shopper proceeds to pay, pass the serialized `state.data` to your server to send a \\\/payments request\\n    }\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;6dc8f95d929fd3138f47e31adf31559d&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper submits their payment details or chooses to pay with a payment method that requires a redirection, you need to make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request specifying:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0of the payment and\\u00a0its &lt;code&gt;value&lt;\\\/code&gt;\\u00a0in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;paymentComponentState.data.paymentMethod&lt;\\\/code&gt; from your client app. This is from the &lt;code&gt;state.data&lt;\\\/code&gt; in the previous step.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper is taken back to in case of a redirection. &lt;br&gt; Specify your Android URI scheme, followed by the &lt;code&gt;RedirectComponent.getReturnUrl(context)&lt;\\\/code&gt; from the Component. In our examples, we use &lt;code&gt;adyencheckout&lt;\\\/code&gt; as the Android URI scheme. &lt;br&gt;  The &lt;code&gt;returnUrl&lt;\\\/code&gt; can have a maximum of 1024 characters.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;You need to include additional parameters in your payment request to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrate some payment methods. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Make use of our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Use &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-component#make-a-payment\\&quot;&gt;native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/android-component#create-a-token\\&quot;&gt;Tokenize your shopper&#039;s payment details&lt;\\\/a&gt; or &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/android-component\\\/#recurring-payments\\&quot;&gt;make recurring payments&lt;\\\/a&gt;.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The following example shows how to make a payment request for &lt;strong&gt;EUR&amp;nbsp;10&lt;\\\/strong&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;payments-request-component-android&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .returnUrl(\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  ReturnUrl = \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: \\\\&amp;quot;STATE_DATA\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  ReturnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: \\\\&amp;quot;STATE_DATA\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; &#039;STATE_DATA&#039;,\\\\n  :returnUrl =&amp;gt; &#039;adyencheckout:\\\\\\\/\\\\\\\/your.package.name&#039;,\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Your next steps depend on whether the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tab1lWxc74325\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;74325&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v67 and later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Next steps&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;No &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;No additional steps are needed to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;Get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;).&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;With &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The shopper needs to do additional actions to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Pass the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object to your client app. Make sure that you only pass the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object and not the full response. &amp;lt;br&amp;gt; 2. &amp;lt;a href=\\\\&amp;quot;#additional-action\\\\&amp;quot;&amp;gt;Handle the additional action&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;p&amp;gt;The following example shows a  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response with &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2&amp;lt;\\\\\\\/strong&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;\\\\\\\/payments response&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;IdentifyShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot; : {\\\\\\\\n   \\\\\\\\\\\\&amp;quot;token\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;eyJkaXJl...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;Ab02b4c0...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;threeDS2\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;authorisationToken\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;BQABAQ...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;subtype\\\\\\\\\\\\&amp;quot; : \\\\\\\\\\\\&amp;quot;fingerprint\\\\\\\\\\\\&amp;quot;\\\\\\\\n }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v67&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67-response_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v67&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v66 and earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Next steps&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;No &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;No additional steps are needed to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;Get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;With &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The shopper needs to do additional actions to complete the payment.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;1. Store the &amp;lt;code&amp;gt;action.paymentData&amp;lt;\\\\\\\/code&amp;gt; locally in your app. You&amp;#039;ll need this for the &amp;lt;code&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/code&amp;gt; request. &amp;lt;br&amp;gt; 2. Pass the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object to your client app. Make sure that you only pass the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object and not the full response. &amp;lt;br&amp;gt; 3. &amp;lt;a href=\\\\&amp;quot;#additional-action\\\\&amp;quot;&amp;gt;Handle the additional action&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;p&amp;gt;The following example shows a  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response with &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2Fingerprint&amp;lt;\\\\\\\/strong&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;\\\\\\\/payments response&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;IdentifyShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;{hint: Store this on your server.}paymentData{\\\\\\\\\\\\\\\/hint}\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCuZFJrQOjSsl\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/zt+...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;token\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eyJ0aHJlZURTTWV0aG9kTm90aWZpY...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;threeDS2Fingerprint\\\\\\\\\\\\&amp;quot;\\\\\\\\n },\\\\\\\\n \\\\\\\\\\\\&amp;quot;authentication\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;threeds2.fingerprintToken\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eyJ0aHJlZURTTWV0aG9kTm90aWZpY...\\\\\\\\\\\\&amp;quot;\\\\\\\\n },\\\\\\\\n \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n   {\\\\\\\\n     \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;threeds2.fingerprint\\\\\\\\\\\\&amp;quot;,\\\\\\\\n     \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n ],\\\\\\\\n ...\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v66&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66-response_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v66&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;0ad7ccce4d5afff119502483e202e004&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that you can add payment methods that require additional actions.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;To see if a specific payment method requires an additional action, go to the &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Serialize the &lt;code&gt;action&lt;\\\/code&gt; object it and pass it to the Component.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Deserialize the action object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;kotlin\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;val action = Action.SERIALIZER.deserialize(paymentResponse.action)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The type of action determines which Action Component you must initialize.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt; &lt;br&gt; The value sometimes contains the name of the payment method. For example: &lt;strong&gt;wechatpaySDK&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, use the Redirect Component to redirect the shopper to another website or app to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Add the following to your &lt;code&gt;build.gradle file&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Initialize component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;groovy\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;implementation \\\\\\&quot;com.adyen.checkout:redirect:&amp;lt;latest-version&amp;gt;\\\\\\&quot;\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a configuration object for the Component, passing your &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\\/#get-your-client-key\\&quot;&gt;client key&lt;\\\/a&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create configuration object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;kotlin\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;val redirectConfiguration = RedirectConfiguration.Builder(context, \\\\\\&quot;YOUR_CLIENT_KEY\\\\\\&quot;)\\\\n   .setEnvironment(Environment.TEST)\\\\n   .build()\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;To initialize an instance of the Component, call &lt;code&gt;PROVIDER.get&lt;\\\/code&gt; from the Component and pass in the context (for example, &lt;code&gt;this@YourActivity&lt;\\\/code&gt;), application class, and the configuration object created in the previous step:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Initialize instance of component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;kotlin\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;val redirectComponent = RedirectComponent.PROVIDER.get(this@YourActivity, application, redirectConfiguration)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your instance, call &lt;code&gt;handleAction&lt;\\\/code&gt; and pass:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;the context (for example, &lt;code&gt;this@YourActivity&lt;\\\/code&gt;)&lt;\\\/li&gt;\\n&lt;li&gt;the &lt;code&gt;action&lt;\\\/code&gt; object from the deserialized &lt;code&gt;\\\/payments&lt;\\\/code&gt; response.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Call handleAction&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;kotlin\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;redirectComponent.handleAction(this@YourActivity, action)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Add an &lt;code&gt;IntentFilter&lt;\\\/code&gt; to the &lt;code&gt;Activity&lt;\\\/code&gt; that will handle the &lt;code&gt;returnUrl&lt;\\\/code&gt; specified in your &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/advanced-flow\\\/?platform=Android&amp;amp;integration=Components#make-a-payment\\&quot;&gt;&lt;code&gt;\\\/payments&lt;\\\/code&gt; request&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Intent filter&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;xml\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;&amp;lt;activity\\\\n    android:name=\\\\\\&quot;.YourActivity\\\\\\&quot;&amp;gt;\\\\n      &amp;lt;intent-filter&amp;gt;\\\\n         &amp;lt;action android:name=\\\\\\&quot;android.intent.action.VIEW\\\\\\&quot;\\\\\\\/&amp;gt;\\\\n         &amp;lt;category android:name=\\\\\\&quot;android.intent.category.DEFAULT\\\\\\&quot;\\\\\\\/&amp;gt;\\\\n         &amp;lt;category android:name=\\\\\\&quot;android.intent.category.BROWSABLE\\\\\\&quot;\\\\\\\/&amp;gt;\\\\n         &amp;lt;data android:host=\\\\\\&quot;${applicationId}\\\\\\&quot; android:scheme=\\\\\\&quot;adyencheckout\\\\\\&quot;\\\\\\\/&amp;gt;\\\\n      &amp;lt;\\\\\\\/intent-filter&amp;gt;\\\\n &amp;lt;\\\\\\\/activity&amp;gt;\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The &lt;code&gt;${applicationId}&lt;\\\/code&gt; will be replaced with &lt;code&gt;your.package.name&lt;\\\/code&gt; at build time.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result of the redirect from the &lt;code&gt;Activity&lt;\\\/code&gt;. Pass the &lt;code&gt;intent&lt;\\\/code&gt; back to the Component. Depending on your activity&#039;s &lt;a href=\\&quot;https:\\\/\\\/developer.android.com\\\/guide\\\/topics\\\/manifest\\\/activity-element#lmode\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;launchMode&lt;\\\/a&gt;, you can get this intent in either &lt;code&gt;onCreate&lt;\\\/code&gt; or &lt;code&gt;onNewIntent&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Get result of redirect&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;kotlin\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;private fun handleIntent(intent: Intent?) {\\\\n    val data = intent?.data\\\\n    if (data != null &amp;amp;&amp;amp; data.toString().startsWith(RedirectUtil.REDIRECT_RESULT_SCHEME)) {\\\\n      redirectComponent.handleIntent(intent)\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The Component notifies the &lt;code&gt;observer&lt;\\\/code&gt; with the &lt;code&gt;actionComponentData&lt;\\\/code&gt; object from the data in &lt;code&gt;intent.data&lt;\\\/code&gt;. Pass this to your server.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Notification&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;kotlin\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;redirectComponent.observe(this) { actionComponentData -&amp;gt;\\\\n    \\\\\\\/\\\\\\\/ Send a \\\\\\\/payments\\\\\\\/details\\\\\\\/ call containing the `actionComponentData`\\\\n    sendPaymentDetails(actionComponentData)\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n\\n&lt;div id=\\&quot;tabjednz79346\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;79346&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;v67 or later&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;When the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2&amp;lt;\\\\\\\/strong&amp;gt;, the payment qualifies for 3D Secure 2 and it goes through the &amp;lt;a href=\\\\&amp;quot;\\\\\\\/online-payments\\\\\\\/3d-secure\\\\\\\/#authentication-flows\\\\&amp;quot;&amp;gt;frictionless or the challenge flow&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67_or_later_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;v66 or earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;When the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2Fingerprint&amp;lt;\\\\\\\/strong&amp;gt;, the payment qualifies for 3D Secure 2 and it goes through device fingerprinting.&amp;lt;br \\\\\\\/&amp;gt;\\\\nWhen the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response includes &amp;lt;code&amp;gt;action.type&amp;lt;\\\\\\\/code&amp;gt;: &amp;lt;strong&amp;gt;threeDS2Challenge&amp;lt;\\\\\\\/strong&amp;gt;, the payment qualifies for 3D Secure 2 and it goes through the challenge flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66_or_earlier_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/?platform=Android&amp;amp;integration=Components&amp;amp;version=4.9.1%2Band%2Blater\\&quot;&gt;3D Secure 2 Component&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must use a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;Use the QR Code Component to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;p&gt;Use the payment method action Component to trigger the app switch from your app to the payment method&#039;s app. For example, use the &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/payment-methods\\\/wechat-pay\\\/wechat-pay-in-app-payments\\\/android-component#handle-the-app-switch\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;WeChat Pay Component&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;p&gt;Use the Await Component to handle the action.&lt;\\\/p&gt;&quot;,&quot;3697f3ac82275151db962242359820a1&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Submit additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If the shopper performed additional action, you need to submit additional payment details to either complete the payment, or to check the payment result.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tab5A8Ly68339\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;68339&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v67&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Make a &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/#\\\\\\\/CheckoutService\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; request, and include:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;details&amp;lt;\\\\\\\/code&amp;gt;: The &amp;lt;code&amp;gt;actionComponentData.details&amp;lt;\\\\\\\/code&amp;gt; from the Component.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;details-request-component&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;curl&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkout-test.adyen.com\\\\\\\\\\\\\\\/v72\\\\\\\\\\\\\\\/payments\\\\\\\\\\\\\\\/details \\\\\\\\\\\\\\\\\\\\\\\\n-H &amp;#039;x-api-key: ADYEN_API_KEY&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n-H &amp;#039;content-type: application\\\\\\\\\\\\\\\/json&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n-d &amp;#039;{hint:object passed from your client app}STATE_DATA{\\\\\\\\\\\\\\\/hint}&amp;#039;&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;java&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Java&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\\\\\nString xApiKey = \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\nClient client = new Client(xApiKey,Environment.TEST);\\\\\\\\nCheckout checkout = new Checkout(client);\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\\\\\nPaymentsDetailsRequest paymentsDetailsRequest = STATE_DATA;\\\\\\\\nPaymentsResponse paymentsDetailsResponse = checkout.paymentsDetails(paymentsDetailsRequest);&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;PHP&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n$client-&amp;amp;gt;setXApiKey(\\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;);\\\\\\\\n$service = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout($client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\\\\\n$params = STATE_DATA;\\\\\\\\n$result = $service-&amp;amp;gt;paymentsDetails($params);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Check if further action is needed.\\\\\\\\nif (array_key_exists(\\\\\\\\&amp;amp;quot;action\\\\\\\\&amp;amp;quot;, $result)){\\\\\\\\n   \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Pass the action object to your client.\\\\\\\\n   \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ $result[\\\\\\\\&amp;amp;quot;action\\\\\\\\&amp;amp;quot;]\\\\\\\\n}\\\\\\\\nelse {\\\\\\\\n   \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\\\\\n   \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ $result[&amp;#039;resultCode&amp;#039;]\\\\\\\\n}&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;cs&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;C#&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\\\\\nstring apiKey = \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\nvar client = new Client (apiKey, Environment.Test);\\\\\\\\nvar checkout = new Checkout(client);\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ STATE_DATA is an object passed from the client app, deserialized from JSON to a data structure.\\\\\\\\nvar paymentsDetailsRequest = STATE_DATA;\\\\\\\\nvar paymentsDetailsResponse = checkout.PaymentDetails(paymentsDetailsRequest);&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;js&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;NodeJS (JavaScript)&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;const {Client, Config, CheckoutAPI} = require(&amp;#039;@adyen\\\\\\\\\\\\\\\/api-library&amp;#039;);\\\\\\\\nconst config = new Config();\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\\\\\nconfig.apiKey = &amp;#039;[ADYEN_API_KEY]&amp;#039;;\\\\\\\\nconst client = new Client({ config });\\\\\\\\nclient.setEnvironment(\\\\\\\\&amp;amp;quot;TEST\\\\\\\\&amp;amp;quot;);\\\\\\\\nconst checkout = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\\\\\ncheckout.paymentsDetails(STATE_DATA).then(res =&amp;amp;gt; res);&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;go&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Go&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;import (\\\\\\\\n    \\\\\\\\&amp;amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/v5\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\&amp;amp;quot;\\\\\\\\n    \\\\\\\\&amp;amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/v5\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\&amp;amp;quot;\\\\\\\\n    \\\\\\\\&amp;amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/v5\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\&amp;amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\\\\\nclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n    Environment: common.TestEnv,\\\\\\\\n    ApiKey:      \\\\\\\\&amp;amp;quot;[ADYEN_API_KEY]\\\\\\\\&amp;amp;quot;,\\\\\\\\n})\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\\\\\nreq := STATE_DATA;\\\\\\\\nres, httpRes, err := client.Checkout.PaymentsDetails(&amp;amp;amp;req)&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;py&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Python&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;# Set your X-API-KEY with the API key from the Customer Area.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.payment.client.platform = \\\\\\\\&amp;amp;quot;test\\\\\\\\&amp;amp;quot;\\\\\\\\nadyen.client.xapikey = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\n\\\\\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\\\\\nrequest = STATE_DATA\\\\\\\\nresult = adyen.checkout.payments_details(request)\\\\\\\\n\\\\\\\\n# Check if further action is needed.\\\\\\\\nif &amp;#039;action&amp;#039; in result.message:\\\\\\\\n   # Pass the action object to your client.\\\\\\\\n   # result.message[&amp;#039;action&amp;#039;]\\\\\\\\nelse:\\\\\\\\n   # No further action needed, pass the resultCode to your client.\\\\\\\\n   # result.message[&amp;#039;resultCode&amp;#039;]&amp;amp;quot;},{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;Ruby&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set your X-API-KEY with the API key from the Customer Area.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.env = :test\\\\\\\\nadyen.api_key = \\\\\\\\&amp;amp;quot;ADYEN_API_KEY\\\\\\\\&amp;amp;quot;\\\\\\\\n\\\\\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\\\\\nrequest = STATE_DATA\\\\\\\\nresponse = adyen.checkout.payments.details(request)\\\\\\\\n\\\\\\\\n# Check if further action is needed.\\\\\\\\nif response.body.has_key(:action)\\\\\\\\n   # Pass the action object to your client\\\\\\\\n   puts response.body[:action]\\\\\\\\nelse\\\\\\\\n   # No further action needed, pass the resultCode to your client\\\\\\\\n   puts response.body[:resultCode]\\\\\\\\nend&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;The response includes:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;pspReference&amp;lt;\\\\\\\/code&amp;gt;: Our unique identifier for the transaction.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;resultCode&amp;lt;\\\\\\\/code&amp;gt;: The current status of the payment.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v67&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v67-payments-details_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v67&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Checkout API v66 and earlier&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Make a &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; request, and include:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;details&amp;lt;\\\\\\\/code&amp;gt;: The &amp;lt;code&amp;gt;actionComponentData.details&amp;lt;\\\\\\\/code&amp;gt; from the Component.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;paymentData&amp;lt;\\\\\\\/code&amp;gt;: the value from the last API response that you stored locally in the client app.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;p&amp;gt;Depending on the payment result,  you receive a response containing:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;resultCode&amp;lt;\\\\\\\/code&amp;gt;: Provides information about the result of the request.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;pspReference&amp;lt;\\\\\\\/code&amp;gt;: Our unique identifier for the transaction.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt;: If you receive this object, &amp;lt;a href=\\\\&amp;quot;#additional-action\\\\&amp;quot;&amp;gt;handle the additional action&amp;lt;\\\\\\\/a&amp;gt; and &amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;send additional payment details&amp;lt;\\\\\\\/a&amp;gt; again.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;p&amp;gt;If the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\\\\/details\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments\\\\\\\/details&amp;lt;\\\\\\\/a&amp;gt; response does not contain an &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object, &amp;lt;a href=\\\\&amp;quot;#get-the-payment-outcome\\\\&amp;quot;&amp;gt;get the payment outcome&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;v66&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;v66-payments-details_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;v66&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Sample successful payment response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Sample refused response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;b605a73292450004c341b95eeabe04cd&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After the Component finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;\\n  &lt;code&gt;resultCode&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;12dbbe6b736cd6b48d825f7c53ca9816&quot;:&quot;&lt;h2 id=\\&quot;testing-your-integration\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to test your integration. Use the &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers#android-test-cards-app\\&quot;&gt;Adyen Android test cards app&lt;\\\/a&gt; to access, copy, and autofill card details from within your Android device. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt; &lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/prepare-application\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. \\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide#mobile-in-app-online-payments-integration\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt;, and submit the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Load the Component from one of our live environments and set the &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-android\\\/blob\\\/main\\\/core\\\/src\\\/main\\\/java\\\/com\\\/adyen\\\/checkout\\\/core\\\/common\\\/Environment.kt\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;Environment&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to match your live endpoints:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;environment&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;EUROPE&lt;\\\/strong&gt; or &lt;strong&gt;LIVE&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;AUSTRALIA&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;US&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;UNITED_STATES&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Asia Pacific South East&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;APSE&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;The &lt;code&gt;Environment&lt;\\\/code&gt; must match the region of the live endpoints you are connecting to.&lt;\\\/p&gt;&quot;,&quot;636bff5dad2bdbda16af43f74c03dd14&quot;:&quot;&lt;h2 id=\\&quot;next-steps\\&quot;&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps82541\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Modify payments&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods#add-payment-methods-to-your-account\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Tokenization&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Save shopper payment details for later payments.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;e2985df29c09cf3014a42b5cb69515b7&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you begin to integrate, make sure you have followed the &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen guide&lt;\\\/a&gt; to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Get an overview of the steps needed to accept live payments.&lt;\\\/li&gt;\\n&lt;li&gt;Create your test account.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After you have created your test account:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt; to know the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;6babaa1f58577c831c78ab1e93069f68&quot;:&quot;&lt;h2&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Components integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;p&gt;&lt;img src=\\&quot;\\\/filters\\\/advanced-flow-integration\\\/android\\\/5-0-0\\\/5-3-0\\\/components-full\\\/components-flow.jpg?lightbox=1\\&quot; alt=\\&quot;\\&quot; \\\/&gt;&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, submit a request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#configure\\&quot;&gt;Configure&lt;\\\/a&gt; and &lt;a href=\\&quot;#launch-and-show\\&quot;&gt;launch&lt;\\\/a&gt; the Component to collect the shopper&#039;s details.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment request&lt;\\\/a&gt; with data that you receive from the Component.&lt;\\\/li&gt;\\n&lt;li&gt;Handle &lt;a href=\\&quot;#handle-action-object\\&quot;&gt;additional client-side actions&lt;\\\/a&gt;, if required.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;send additional payment details&lt;\\\/a&gt; that you receive from the Component, if required.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt; to inform the shopper and update your order management system.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps54354\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#add\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;5e6f829c7a80815cc5a37a688dd7b3fe&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tab7gJn376434\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;76434&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;0aa641e08a3a49941ec5260eed9a8b8f&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.&lt;\\\/p&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, including:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;We recommend that you include all the optional parameters to get the most accurate list of available payment methods.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;Android&lt;\\\/strong&gt;. Adyen returns only the payment methods available for Android.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. Adyen returns only the payment methods available in this country. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, the &lt;code&gt;shopperlocale&lt;\\\/code&gt; is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code. You also need to set the same &lt;code&gt;ShopperLocale&lt;\\\/code&gt; within your Checkout configuration.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example, to get available payment methods for a shopper in the Netherlands, for a payment of &lt;strong&gt;10&lt;\\\/strong&gt; EUR:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;advanced-flow-post-payment-methods-request&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Android&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available &lt;code&gt;paymentMethods&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;\\\/paymentMethods response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;Cards\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;scheme\\\\\\&quot;\\\\n    ...\\\\n  },\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n  },\\\\n  ...\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;You must pass the response to your client app to &lt;a href=\\&quot;#launch-and-show-components\\&quot;&gt;launch and show Components&lt;\\\/a&gt;.&lt;\\\/p&gt;&quot;,&quot;efce705da238368693da40652a9e0fd4&quot;:&quot;&lt;h2 id=\\&quot;set-up\\&quot;&gt;Set up Components&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3 id=\\&quot;import\\&quot;&gt;1: Import the library&lt;\\\/h3&gt;\\n&lt;p&gt;The default implementation is with Jetpack Compose, but you can import the library without Jetpack Compose instead.&lt;\\\/p&gt;\\n&lt;p&gt;Import the compatibility module in your &lt;code&gt;build.gradle&lt;\\\/code&gt; file. For example, to import the Card Component:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabQRSrC56071\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;56071&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;With Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Import the module with Compose&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;implementation \\\\\\\\\\\\&amp;quot;com.adyen.checkout:card:YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\\\\\nimplementation \\\\\\\\\\\\&amp;quot;com.adyen.checkout:components-compose:YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;compose-import_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;compose&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Without Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Import the module without Compose&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;implementation \\\\\\\\\\\\&amp;quot;com.adyen.checkout:card:YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;no-compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;no-compose-import_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;no-compose&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3 id=\\&quot;configure\\&quot;&gt;2. Configure components&lt;\\\/h3&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Create a configuration object, setting the following properties:&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Property&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. To use the device&#039;s default locale, replace this with your context.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;code&gt;Environment.TEST&lt;\\\/code&gt; for testing. When going live, use one of our live environments.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your client key.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;ol start=\\&quot;2\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Include other optional configurations for the Component and call the &lt;code&gt;build&lt;\\\/code&gt; function.&lt;\\\/p&gt;\\n&lt;p&gt;For example:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Create the configuration object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Create a configuration object. For example, for the card Component.\\\\nval cardConfiguration = cardConfiguration.Builder(\\\\n    shopperLocale, \\\\\\\/\\\\\\\/ Use your context instead to use the device&#039;s default locale.\\\\n    environment,\\\\n    clientKey\\\\n)\\\\n\\\\n\\\\\\\/\\\\\\\/ Set additional configuration.\\\\n    .setHolderNameRequired(true) \\\\\\\/\\\\\\\/ Optional property to show the cardholder name input field.\\\\n    .setSubmitButtonVisible(false) \\\\\\\/\\\\\\\/ Optional property to hide the Pay button.\\\\n    .build()&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;9a1125a563ee54e80a8d4ea94dee38db&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;2: Create the configuration object&lt;\\\/h3&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Set the following properties in the configuration object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Property&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you want to show the amount on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;td&gt;The currency and value of the payment amount shown on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. To use the device&#039;s default locale, replace this with your context.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;code&gt;Environment.TEST&lt;\\\/code&gt; for testing. When going live, use one of our live environments.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your client key.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Call the &lt;code&gt;build&lt;\\\/code&gt; function.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;For example, to configure the card Component:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Configure the card Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Create the amount object.\\\\nval amount = Amount(\\\\n    currency = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value = 1000,\\\\n)\\\\n\\\\n\\\\\\\/\\\\\\\/ Create a configuration object.\\\\nval cardConfiguration = CardConfiguration.Builder(\\\\n    shopperLocale, \\\\\\\/\\\\\\\/ Use your context instead to use the device&#039;s default locale.\\\\n    environment,\\\\n    clientKey\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set the amount in the configuration object.\\\\n    .setAmount(amount) \\\\\\\/\\\\\\\/ Optional to show the amount on the Pay button.\\\\n    .setHolderNameRequired(true) \\\\\\\/\\\\\\\/ Optional configuration property to show the cardholder name input field.\\\\n    .build()&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Implement methods in &lt;code&gt;ComponentCallback&lt;\\\/code&gt; to pass data between your client app and your server.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Method&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onError&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Handle an error if the Component encounters one.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;For example, for the card Component:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Implement methods for the card Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;java\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ Handler to make a \\\\\\\/payments request.\\\\noverride fun onSubmit(state: CardComponentState) {\\\\n  val paymentComponentJson = PaymentComponentData.SERIALIZER.serialize(state.data)\\\\n  \\\\\\\/\\\\\\\/ Your server makes \\\\\\\/payments request, including paymentComponentJson.\\\\n  \\\\\\\/\\\\\\\/ This is used in Step 4: Make a payment.\\\\n\\\\n  \\\\\\\/\\\\\\\/ If additional action is required, handle the action.\\\\n  val action = Action.SERIALIZER.deserialize(actionJSONObject)\\\\n  cardComponent.handleAction(action, activity)\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Handler to make a \\\\\\\/payments\\\\\\\/details request to send additional payment details.\\\\noverride fun onAdditionalDetails(actionComponentData: ActionComponentData) {\\\\n  val actionComponentJson = ActionComponentData.SERIALIZER.serialize(actionComponentData)\\\\n  \\\\\\\/\\\\\\\/ Your server makes a \\\\\\\/payments\\\\\\\/details request, including actionComponentJson.\\\\n  \\\\\\\/\\\\\\\/ This is used in Step 5: Submit additional payment details.\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ The Component encounters an error.\\\\noverride fun onError(componentError: ComponentError) {\\\\n \\\\t\\\\\\\/\\\\\\\/ Handle the error.\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;faeb2235b786c985a56de15fb48cd74f&quot;:&quot;&lt;h3 id=\\&quot;launch-and-show\\&quot;&gt;4: Launch and show the Component&lt;\\\/h3&gt;\\n\\n&lt;div id=\\&quot;tablabPj11833\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;11833&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;With Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Implement the &amp;lt;code&amp;gt;SessionComponentCallback&amp;lt;\\\\\\\/code&amp;gt; class to handle additional actions and receive the result of the session.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add handlers&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;override fun onFinished(result: SessionPaymentResult) {\\\\\\\\n    \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ The payment finishes with a result.\\\\\\\\n}\\\\\\\\noverride fun onAction(action: Action) {\\\\\\\\n    \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ An additional action needs to be handled. Forward the action to the Component.\\\\\\\\n    cardComponent.handleAction(action, activity)\\\\\\\\n}\\\\\\\\noverride fun onError(componentError: ComponentError) {\\\\\\\\n    \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ The Component encounters an error.\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Create the Component and attach it to a view. For example:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Create the Component&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import com.adyen.checkout.components.compose.get\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Get the payment method.\\\\\\\\nval paymentMethod = checkoutSession.getPaymentMethod(PaymentMethodTypes.SCHEME)\\\\\\\\n\\\\\\\\n@Composable\\\\\\\\nprivate fun ComposableCardComponent() {\\\\\\\\n   \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Keep a reference to this Component in case you need to access it later.\\\\\\\\n   val cardComponent = CardComponent.PROVIDER.get(\\\\\\\\n       checkoutSession = checkoutSession,\\\\\\\\n       paymentMethod = paymentMethod,\\\\\\\\n       configuration = configuration,\\\\\\\\n       componentCallback = callback,\\\\\\\\n       \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ This key is required to ensure a new Component gets created for each different screen or payment session.\\\\\\\\n       \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Generate a new value for this key every time you need to reset the Component.\\\\\\\\n       key = \\\\\\\\\\\\&amp;quot;YOUR_UNIQUE_KEY_FOR_THIS_COMPONENT\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   )\\\\\\\\n\\\\\\\\n   \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ This is your composable, a wrapper around our xml view.\\\\\\\\n   AdyenComponent(\\\\\\\\n      component = cardComponent,\\\\\\\\n      modifier = YOUR_MODIFIER,\\\\\\\\n   )\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;compose-launch_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;compose&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Without Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Add &amp;lt;code&amp;gt;AdyenComponentView&amp;lt;\\\\\\\/code&amp;gt; to your &amp;lt;code&amp;gt;xml&amp;lt;\\\\\\\/code&amp;gt; file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the view&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;com.adyen.checkout.ui.core.AdyenComponentView\\\\\\\\n    android:id=\\\\\\\\\\\\&amp;quot;@+id\\\\\\\\\\\\\\\/YOUR_COMPONENT_VIEW_ID\\\\\\\\\\\\&amp;quot;\\\\\\\\n    ...\\\\\\\\\\\\\\\/&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Implement the &amp;lt;code&amp;gt;SessionComponentCallback&amp;lt;\\\\\\\/code&amp;gt; class to handle additional actions and receive the result of the session.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add handlers&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;override fun onFinished(result: SessionPaymentResult) {\\\\\\\\n    \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ The payment finishes with a result.\\\\\\\\n}\\\\\\\\noverride fun onAction(action: Action) {\\\\\\\\n    \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ An additional action needs to be handled. Forward the action to the Component.\\\\\\\\n    cardComponent.handleAction(action, activity)\\\\\\\\n}\\\\\\\\noverride fun onError(componentError: ComponentError) {\\\\\\\\n    \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ The Component encounters an error.\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Create the Component by calling &amp;lt;code&amp;gt;PROVIDER.get&amp;lt;\\\\\\\/code&amp;gt; from your Component class, passing:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;activity&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;fragment&amp;lt;\\\\\\\/code&amp;gt; (Example)&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Your &amp;lt;code&amp;gt;Activity&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;Fragment&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;checkoutSession&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The checkout session that you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;cardConfiguration&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The card configuration that you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;componentCallback&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The callback for  the functions you implemented.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Start the Component&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Get the payment method.\\\\\\\\nval paymentMethod = checkoutSession.getPaymentMethod(PaymentMethodTypes.SCHEME)\\\\\\\\n\\\\\\\\nval cardComponent = CardComponent.PROVIDER.get(\\\\\\\\n    activity, \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Your activity or fragment.\\\\\\\\n    checkoutSession,\\\\\\\\n    paymentMethod,\\\\\\\\n    cardConfiguration,\\\\\\\\n    componentCallback,\\\\\\\\n)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Attach your Component to your &amp;lt;code&amp;gt;Activity&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;Fragment&amp;lt;\\\\\\\/code&amp;gt;. For example to attach your Component to your view with the identifier &amp;lt;code&amp;gt;cardView&amp;lt;\\\\\\\/code&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Attach your Component to the view&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;binding.cardView.attach(cardComponent, activity) \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Your activity or fragment.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;no-compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;no-compose-launch_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;no-compose&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Your app shows the Component, and the Component handles the whole payment flow.&lt;\\\/p&gt;&quot;,&quot;9a243607f68c5ea180402abceee677c1&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper enters their payment details and selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, the &lt;code&gt;onSubmit&lt;\\\/code&gt; method in your &lt;code&gt;ComponentCallback&lt;\\\/code&gt; class is called, passing the &lt;code&gt;paymentComponentJson&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;paymentComponentJson&lt;\\\/code&gt; object to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;paymentComponentData.paymentMethod&lt;\\\/code&gt; from your client app.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;In case of a redirection, this is the URL to where your shopper is redirected after they complete the payment. Maximum length: 1024 characters. Get this URL from the &lt;code&gt;RedirectComponent.getReturnUrl(context)&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/partners\\\/application-information\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some &lt;a href=\\&quot;\\\/partners\\\/application-information\\&quot;&gt;basic identifying information&lt;\\\/a&gt;, so that we can offer you better support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;checkoutAttemptId&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt; generated by the Component to track the user payment journey. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;payments-request-component-android&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .returnUrl(\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  ReturnUrl = \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: \\\\&amp;quot;STATE_DATA\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  ReturnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: \\\\&amp;quot;STATE_DATA\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; &#039;STATE_DATA&#039;,\\\\n  :returnUrl =&amp;gt; &#039;adyencheckout:\\\\\\\/\\\\\\\/your.package.name&#039;,\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Error handling&lt;\\\/h3&gt;\\n&lt;p&gt;If the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request fails, show the error to the shopper in your client UI.&lt;\\\/p&gt;&quot;,&quot;18525f1da0b9e2e0dc0540b50b107bc0&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;When you get the &lt;code&gt;action&lt;\\\/code&gt; object in the response, do the following:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Pass the full &lt;code&gt;action&lt;\\\/code&gt; object from your server to the Component.&lt;\\\/li&gt;\\n&lt;li&gt;Use &lt;code&gt;ActionResponse.SERIALIZER&lt;\\\/code&gt; to serialize the &lt;code&gt;action&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Return the serialized object to The Component.&lt;\\\/li&gt;\\n&lt;li&gt;The Component handles the additional action on the client side.&lt;\\\/li&gt;\\n&lt;li&gt;You handle the payment data, depending on the type of action (&lt;code&gt;action.type&lt;\\\/code&gt;).&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;redirect&lt;\\\/strong&gt;, the Component redirects your shopper to another website or app to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Add an &lt;code&gt;IntentFilter&lt;\\\/code&gt; to your &lt;code&gt;Activity&lt;\\\/code&gt; that handles redirects.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Add handling for redirects&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;xml\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;&amp;lt;activity\\\\n  android:name=\\\\\\&quot;YOUR_ACTIVITY\\\\\\&quot;\\\\n  android:exported=\\\\\\&quot;true\\\\\\&quot;&amp;gt;\\\\n  &amp;lt;intent-filter&amp;gt;\\\\n    &amp;lt;action android:name=\\\\\\&quot;android.intent.action.VIEW\\\\\\&quot;\\\\\\\/&amp;gt;\\\\n    &amp;lt;category android:name=\\\\\\&quot;android.intent.category.DEFAULT\\\\\\&quot;\\\\\\\/&amp;gt;\\\\n    &amp;lt;category android:name=\\\\\\&quot;android.intent.category.BROWSABLE\\\\\\&quot;\\\\\\\/&amp;gt;\\\\n    &amp;lt;data android:host=\\\\\\&quot;YOUR_APPLICATION_ID\\\\\\&quot; android:scheme=\\\\\\&quot;adyencheckout\\\\\\&quot;\\\\\\\/&amp;gt;\\\\n  &amp;lt;\\\\\\\/intent-filter&amp;gt;\\\\n&amp;lt;\\\\\\\/activity&amp;gt;\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The &lt;code&gt;android:host&lt;\\\/code&gt; value is your package name at build time. This must match the &lt;code&gt;returnUrl&lt;\\\/code&gt; from the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request.&lt;br \\\/&gt;\\nTo get your &lt;code&gt;returnUrl&lt;\\\/code&gt; from the Component, you can use the &lt;code&gt;RedirectComponent.getReturnUrl(context)&lt;\\\/code&gt; function.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full &lt;code&gt;action&lt;\\\/code&gt; object from your server to the Component.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The Component redirects the shopper to another website or app.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper returns to your app.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your &lt;code&gt;Activity&lt;\\\/code&gt;, get the result of the redirect.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;Intent&lt;\\\/code&gt; to the the Component. Depending on your activity&#039;s launch mode, you get the intent in either &lt;code&gt;onCreate&lt;\\\/code&gt; or &lt;code&gt;onNewIntent&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Handle the intent&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;java\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;private fun handleIntent(intent: Intent?) {\\\\n  if (intent.data?.toString().orEmpty().startsWith(RedirectComponent.REDIRECT_RESULT_SCHEME)) {\\\\n    cardComponent?.handleIntent(intent)\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The Component notifies you through the &lt;code&gt;ComponentCallback.onAdditionalDetails&lt;\\\/code&gt; method with the &lt;code&gt;actionComponentData&lt;\\\/code&gt; object from &lt;code&gt;intent.data&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;actionComponentData&lt;\\\/code&gt; object from your client app to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;If the shopper fails to return to your app, you do not get the additional data to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; method in your &lt;code&gt;ComponentCallback&lt;\\\/code&gt; class.&lt;\\\/li&gt;\\n&lt;li&gt;From &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;, get the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object from your client app to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must use a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows the QR code to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;When the shopper uses the QR code to complete the payment, the Component calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; method in your &lt;code&gt;ComponentCallback&lt;\\\/code&gt; class.&lt;\\\/li&gt;\\n&lt;li&gt;From &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;, get the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object from your client app to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows a different UI in an overlay.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper uses the UI overlay to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; method in your &lt;code&gt;ComponentCallback&lt;\\\/code&gt; class.&lt;\\\/li&gt;\\n&lt;li&gt;From &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;, get the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object from your client app to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows the voucher to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;When the shopper completes the additional action with the voucher (for example: saving it to their digital wallet or forwarding it to their email), The Component calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; method in your &lt;code&gt;ComponentCallback&lt;\\\/code&gt; class.&lt;\\\/li&gt;\\n&lt;li&gt;From &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;, get the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object from your client app to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows the instructions for the additional action to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper does the additional action.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; method in your &lt;code&gt;ComponentCallback&lt;\\\/code&gt; class.&lt;\\\/li&gt;\\n&lt;li&gt;From &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;, get the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object from your client app to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;b8951d6567ce5ce24688adb253c699fa&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request including the full data from the &lt;code&gt;actionComponentJson&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;details-request-component&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{hint:object passed from your client app}STATE_DATA{\\\\\\\/hint}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nString xApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nClient client = new Client(xApiKey,Environment.TEST);\\\\nCheckout checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nPaymentsDetailsRequest paymentsDetailsRequest = STATE_DATA;\\\\nPaymentsResponse paymentsDetailsResponse = checkout.paymentsDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\n$params = STATE_DATA;\\\\n$result = $service-&amp;gt;paymentsDetails($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed.\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from the client app, deserialized from JSON to a data structure.\\\\nvar paymentsDetailsRequest = STATE_DATA;\\\\nvar paymentsDetailsResponse = checkout.PaymentDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;[ADYEN_API_KEY]&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\ncheckout.paymentsDetails(STATE_DATA).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;[ADYEN_API_KEY]\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nreq := STATE_DATA;\\\\nres, httpRes, err := client.Checkout.PaymentsDetails(&amp;amp;req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresult = adyen.checkout.payments_details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresponse = adyen.checkout.payments.details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client\\\\n   puts response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode to your client\\\\n   puts response.body[:resultCode]\\\\nend&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response from your server to your client app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;81ebb89242557854b68f0a6e6d74f7ae&quot;:&quot;&lt;h2 id=\\&quot;test-and-go-live\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0&lt;a href=\\&quot;\\\/development-resources\\\/testing\\&quot;&gt;test your integration&lt;\\\/a&gt;. Use the &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers#android-test-cards-app\\&quot;&gt;Adyen Android test cards app&lt;\\\/a&gt; to access, copy, and autofill card details from within your Android device. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. Review the process to start accepting payments on &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?=1#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.\\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Load  from one of our live environments and set the &lt;code&gt;environment&lt;\\\/code&gt; to match your live endpoints:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;Value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe (EU) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;EUROPE&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;United States (US) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;UNITED_STATES&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia (AU) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;AUSTRALIA&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Asia Pacific &amp;amp; Southeast (APSE) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;APSE&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;India (IN) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;INDIA&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;131c281f7efab619805aa7971dcc7b4e&quot;:&quot;&lt;h2&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps86087\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Modify payments&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/add-payment-methods\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Tokenization&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Save shopper payment details for later payments.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;6a99fd4b2cca25a4dd1b5bce95a5cf9b&quot;:&quot;&lt;h2&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Components integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;p&gt;&lt;img src=\\&quot;\\\/filters\\\/advanced-flow-integration\\\/android\\\/5-0-0\\\/5-3-0\\\/components-full\\\/components-flow.jpg?lightbox=1\\&quot; alt=\\&quot;\\&quot; \\\/&gt;&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, submit a request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#configure\\&quot;&gt;Configure&lt;\\\/a&gt; and &lt;a href=\\&quot;#launch-and-show\\&quot;&gt;launch&lt;\\\/a&gt; the Component to collect the shopper&#039;s details.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment request&lt;\\\/a&gt; with data that you receive from the Component.&lt;\\\/li&gt;\\n&lt;li&gt;Handle &lt;a href=\\&quot;#handle-action-object\\&quot;&gt;additional client-side actions&lt;\\\/a&gt;, if required.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;send additional payment details&lt;\\\/a&gt; that you receive from the Component, if required.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt; to inform the shopper and update your order management system.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps48606\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#add\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;bf5eb42ee2c188f861c21d9ce783ddcc&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tab1cHQX56552\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;56552&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;6b10aaa3e43b58c3183d604d06e5bf2b&quot;:&quot;&lt;h2 id=\\&quot;set-up\\&quot;&gt;Set up Components&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3 id=\\&quot;import\\&quot;&gt;1: Import the library&lt;\\\/h3&gt;\\n&lt;p&gt;The default implementation is with Jetpack Compose, but you can import the library without Jetpack Compose instead.&lt;\\\/p&gt;\\n&lt;p&gt;Import the compatibility module in your &lt;code&gt;build.gradle&lt;\\\/code&gt; file. For example, to import the Card Component:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabl2kFz21362\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;21362&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;With Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Import the module with Compose&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;groovy\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;implementation \\\\\\\\\\\\&amp;quot;com.adyen.checkout:card:YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\\\\\nimplementation \\\\\\\\\\\\&amp;quot;com.adyen.checkout:components-compose:YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;compose-import_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;compose&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Without Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Import the module without Compose&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;groovy\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;implementation \\\\\\\\\\\\&amp;quot;com.adyen.checkout:card:YOUR_VERSION\\\\\\\\\\\\&amp;quot;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;no-compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;no-compose-import_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;no-compose&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You can find the module to import for each payment method on the corresponding &lt;a href=\\&quot;\\\/payment-methods\\\/\\&quot;&gt;payment method&lt;\\\/a&gt; page.&lt;\\\/p&gt;&quot;,&quot;135d10ae680cc2edd19815d59e5cf592&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;2: Create the configuration object&lt;\\\/h3&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Set the following properties in the configuration object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Property&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you want to show the amount on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;td&gt;The currency and value of the payment amount shown on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;code&gt;Environment.TEST&lt;\\\/code&gt; for testing. When going live, use one of our live environments.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your client key.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s locale. By default, this is the device&#039;s locale.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Include other configurations for the Component.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;For example, to configure the card Component:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Configure the card Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;kotlin\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ Create the amount object.\\\\nval amount = Amount(\\\\n   currency = \\\\\\&quot;EUR\\\\\\&quot;,\\\\n   value = 1000,\\\\n)\\\\n\\\\n\\\\\\\/\\\\\\\/ Create a configuration object\\\\nval checkoutConfiguration = CheckoutConfiguration(\\\\n   environment = environment,\\\\n   clientKey = clientKey,\\\\n   shopperLocale = shopperLocale, \\\\\\\/\\\\\\\/ optional\\\\n   amount = amount, \\\\\\\/\\\\\\\/ optional\\\\n)  {\\\\n   \\\\\\\/\\\\\\\/ Optional: configuration for the card payment method.\\\\n   card {\\\\n      setHolderNameRequired(true)\\\\n      setShopperReference(\\\\\\&quot;...\\\\\\&quot;)\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Implement methods in &lt;code&gt;ComponentCallback&lt;\\\/code&gt; to pass data between your client app and your server.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Method&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onError&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Handle an error if the Component encounters one.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;For example, for the card Component:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Implement methods for the card Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;kotlin\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ Handler to make a \\\\\\\/payments request.\\\\noverride fun onSubmit(state: CardComponentState) {\\\\n  val paymentComponentJson = PaymentComponentData.SERIALIZER.serialize(state.data)\\\\n  \\\\\\\/\\\\\\\/ Your server makes \\\\\\\/payments request, including paymentComponentJson.\\\\n  \\\\\\\/\\\\\\\/ This is used in Step 4: Make a payment.\\\\n\\\\n  \\\\\\\/\\\\\\\/ If additional action is required, handle the action.\\\\n  val action = Action.SERIALIZER.deserialize(actionJSONObject)\\\\n  cardComponent.handleAction(action, activity)\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Handler to make a \\\\\\\/payments\\\\\\\/details request to send additional payment details.\\\\noverride fun onAdditionalDetails(actionComponentData: ActionComponentData) {\\\\n  val actionComponentJson = ActionComponentData.SERIALIZER.serialize(actionComponentData)\\\\n  \\\\\\\/\\\\\\\/ Your server makes a \\\\\\\/payments\\\\\\\/details request, including actionComponentJson.\\\\n  \\\\\\\/\\\\\\\/ This is used in Step 5: Submit additional payment details.\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ The Component encounters an error.\\\\noverride fun onError(componentError: ComponentError) {\\\\n \\\\t\\\\\\\/\\\\\\\/ Handle the error.\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;335861f0b97ac85c8ae37248fe31c96f&quot;:&quot;&lt;h3 id=\\&quot;launch-and-show\\&quot;&gt;Launch and show the Component&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n\\n&lt;div id=\\&quot;tabNeaKk24532\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;24532&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;With Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Deserialize the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/paymentMethods\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/paymentMethods&amp;lt;\\\\\\\/a&amp;gt; response to a &amp;lt;code&amp;gt;PaymentMethodsApiResponse&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Serialize the API response&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;val paymentMethodsApiResponse = PaymentMethodsApiResponse.SERIALIZER.deserialize(paymentMethodsResponseJSON)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Create the Component and attach it to a view. For example:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Create the Component&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import com.adyen.checkout.components.compose.get\\\\\\\\n\\\\\\\\n   \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the payment method object from the \\\\\\\\\\\\\\\/paymentMethods response.\\\\\\\\n   val paymentMethod = paymentMethodsApiResponse?.paymentMethods.orEmpty().firstOrNull {\\\\\\\\n  it.type == PaymentMethodTypes.SCHEME\\\\\\\\n   }\\\\\\\\n\\\\\\\\n@Composable\\\\\\\\nprivate fun ComposableCardComponent() {\\\\\\\\n    \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Keep a reference to this Component in case you need to access it later.\\\\\\\\n    val cardComponent = CardComponent.PROVIDER.get(\\\\\\\\n        paymentMethod = paymentMethod,\\\\\\\\n        configuration = checkoutConfiguration,\\\\\\\\n        componentCallback = callback,\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ This key is required to ensure a new Component gets created for each different screen or payment session.\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Generate a new value for this key every time you need to reset the Component.\\\\\\\\n        key = \\\\\\\\\\\\&amp;quot;UNIQUE_KEY_PER_COMPONENT\\\\\\\\\\\\&amp;quot;,\\\\\\\\n    )\\\\\\\\n\\\\\\\\n    \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ This is your composable, a wrapper around our xml view.\\\\\\\\n    AdyenComponent(\\\\\\\\n        component = cardComponent,\\\\\\\\n        modifier = YOUR_MODIFIER,\\\\\\\\n    )\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;compose-launch_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;compose&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Without Jetpack Compose&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Add &amp;lt;code&amp;gt;AdyenComponentView&amp;lt;\\\\\\\/code&amp;gt; to your layout &amp;lt;code&amp;gt;.xml&amp;lt;\\\\\\\/code&amp;gt; file. For example:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add AdyenComponentView&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;com.adyen.checkout.ui.core.AdyenComponentView\\\\\\\\n  android:id=\\\\\\\\\\\\&amp;quot;@+id\\\\\\\\\\\\\\\/YOUR_COMPONENT_VIEW_ID\\\\\\\\\\\\&amp;quot;\\\\\\\\n  ...\\\\\\\\\\\\\\\/&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Deserialize the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/paymentMethods\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/paymentMethods&amp;lt;\\\\\\\/a&amp;gt; response to a &amp;lt;code&amp;gt;PaymentMethodsApiResponse&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Serialize the API response&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;val paymentMethodsApiResponse = PaymentMethodsApiResponse.SERIALIZER.deserialize(paymentMethodsResponseJSON)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Launch the Component by calling &amp;lt;code&amp;gt;PROVIDER.get&amp;lt;\\\\\\\/code&amp;gt; from your Component class, passing:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;activity&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;fragment&amp;lt;\\\\\\\/code&amp;gt; (Example)&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Your &amp;lt;code&amp;gt;Activity&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;Fragment&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;paymentMethod&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The payment method from your  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/paymentMethods\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/paymentMethods&amp;lt;\\\\\\\/a&amp;gt; response.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;checkoutConfiguration&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The checkout configuration that you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;componentCallback&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The callback for  the functions you implemented.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Create the Component&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create the payment method object from the \\\\\\\\\\\\\\\/paymentMethods response.\\\\\\\\nval paymentMethod = paymentMethodsApiResponse?.paymentMethods.orEmpty().firstOrNull {\\\\\\\\n    it.type == PaymentMethodTypes.SCHEME\\\\\\\\n}\\\\\\\\n\\\\\\\\nval cardComponent = CardComponent.PROVIDER.get(\\\\\\\\n    activity, \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Your activity or fragment.\\\\\\\\n    paymentMethod,\\\\\\\\n    checkoutConfiguration,\\\\\\\\n    componentCallback,\\\\\\\\n)\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Attach your Component to your &amp;lt;code&amp;gt;Activity&amp;lt;\\\\\\\/code&amp;gt; or &amp;lt;code&amp;gt;Fragment&amp;lt;\\\\\\\/code&amp;gt;. For example to attach your Component to your view with the identifier &amp;lt;code&amp;gt;cardView&amp;lt;\\\\\\\/code&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Attach your Component to your view&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;binding.cardView.attach(cardComponent, activity) \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Your activity or fragment.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;no-compose&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;no-compose-launch_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;no-compose&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Your app shows the Component.&lt;\\\/p&gt;&quot;,&quot;8bd42b93c453d9e401b5b63b0eb693b9&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper enters their payment details and selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button, the &lt;code&gt;onSubmit&lt;\\\/code&gt; method in your &lt;code&gt;ComponentCallback&lt;\\\/code&gt; class is called, passing the &lt;code&gt;paymentComponentJson&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the &lt;code&gt;paymentComponentJson&lt;\\\/code&gt; object to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The complete &lt;code&gt;paymentComponentData.paymentMethod&lt;\\\/code&gt; object from your client app that includes the payment method details and other required information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The object that includes information collected by the Component to track the user&#039;s payment journey, including information like the &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt;. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;In case of a redirection, this is the URL to where your shopper is redirected after they complete the payment. Maximum length: 1024 characters. Get this URL from the &lt;code&gt;RedirectComponent.getReturnUrl(context)&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/partners\\\/application-information\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some &lt;a href=\\&quot;\\\/partners\\\/application-information\\&quot;&gt;basic identifying information&lt;\\\/a&gt;, so that we can offer you better support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, refer to our &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;payments-request-component-android&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .returnUrl(\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  ReturnUrl = \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  paymentMethod: \\\\&amp;quot;STATE_DATA\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  ReturnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: \\\\&amp;quot;STATE_DATA\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :paymentMethod =&amp;gt; &#039;STATE_DATA&#039;,\\\\n  :returnUrl =&amp;gt; &#039;adyencheckout:\\\\\\\/\\\\\\\/your.package.name&#039;,\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/your.package.name\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Error handling&lt;\\\/h3&gt;\\n&lt;p&gt;If the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request fails, show the error to the shopper in your client UI.&lt;\\\/p&gt;&quot;}},&quot;api&quot;:{&quot;label&quot;:&quot;API only&quot;,&quot;description&quot;:&quot;Use Adyen APIs and your own UI&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;API only&lt;\\\/h2&gt;\\n&lt;p&gt;Create your own client-side UI and use our API endpoints to get the list of available payment methods and submit a payment.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=api%20only\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Full control of styling on your checkout page&lt;\\\/li&gt;\\n&lt;li&gt;Your own UI elements&lt;\\\/li&gt;\\n&lt;li&gt;Creating your own client-side logic&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Handling secure card data and authentication&lt;\\\/h3&gt;\\n&lt;p&gt;You must ensure that your integration complies with regulatory requirements such as &lt;a href=\\&quot;\\\/online-payments\\\/pci-dss-compliance\\&quot;&gt;PCI DSS&lt;\\\/a&gt; and &lt;a href=\\&quot;\\\/online-payments\\\/psd2-sca-compliance-and-implementation-guide\\&quot;&gt;PSD2 SCA&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;We recommend that you use our pre-built client-side solutions to securely do the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;Collect, validate, and encrypt card details&lt;\\\/strong&gt;: Implement our solution to &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/custom-card-integration\\&quot;&gt;handle encrypted card data&lt;\\\/a&gt; with your custom UI and comply with &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4\\&quot;&gt;PCI DSS regulations&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Authenticate transactions with 3D Secure 2&lt;\\\/strong&gt;: Handle the &lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt; using our solution and comply with &lt;a href=\\&quot;\\\/online-payments\\\/psd2-sca-compliance-and-implementation-guide\\\/sca-options\\&quot;&gt;PSD2 SCA regulations for online payments&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;visual_images&quot;:null,&quot;external_content&quot;:null,&quot;external_icon&quot;:null,&quot;versions&quot;:{&quot;version-72&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;4be4d14a0f25d43d2938f695696205bf&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;710849480aa16cde8347624e5827ac0e&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;8f73244559657311010bcfd0a3711a82&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;72&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-71&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;c8429a7176aebdd13387e32b743ee82b&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;2583f4c0faa0a14f403bd0ac5c9595c8&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;786c1dafef7066cbc356a23eb0c207ef&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;71&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-70&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;528115e2093e470182270fd56eaffee9&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;0aaac5f11d382280ec7f866520e4f57b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;8e0d2ffeaae92a7b41df5d1dedde2003&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;70&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-69&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;efaa9a6fa8107ee4d40bb86150bad8db&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c32c75c1885cb659a8ae527a3e7166f5&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;236ee43ba37e5d284f4c2d3885b07fe8&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;69&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-68&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;864ea94c6bee142e82d168482275b8d0&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c4185b4bbfa31698e658532bdd55ad63&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;c32bceaef0b7af884b98577f5864204f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;ab157ff912c4eaea22a34a75a8369fc4&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;68&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-67&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;eb7503ba900bc7e5413dcb6cad5932bb&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;cee28a11f5bca35d1d3c9c655a090400&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;c32bceaef0b7af884b98577f5864204f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;48123ef61e1fe482c7dd9663dc32b5ca&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;67&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-66&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;11aa9baba62eeb959669ea70fb3e4b7e&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;db49c111e8433691c1e04630078c82d4&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;552e9ff28b875e2de02035247be99a2b&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;af3dd5c396d3d3217ddd545edf40d8cf&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;66&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-5.16.1&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.1&quot;}},&quot;version-5.16.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;5.16.0&quot;}},&quot;version-5.15.0&quot;:{&quot;versions&quot;:{&quot;version&quot;:&quot;5.15.0&quot;},&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;1d43d186aba254c470e458de75718609&quot;:&quot;&lt;p&gt;With an API-only integration, you create your own UI, implement your own client-side logic, and use our API to send and receive payment data. You have full control over the look and feel of your checkout page.&lt;\\\/p&gt;\\n&lt;p&gt;To reduce your development time and resources, you can use one of our pre-built UI options (Drop-in\\\/Components) instead.&lt;\\\/p&gt;&quot;,&quot;b70a81e509a54da6fb991872525e37da&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you build your integration, take into account the following requirements and preparations.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th style=\\&quot;text-align: left;\\&quot;&gt;Requirement&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: left;\\&quot;&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials\\\/roles\\\/\\&quot;&gt;API credential roles&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have the following role: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Checkout webservice role&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/account\\\/user-roles\\&quot;&gt;Customer Area roles&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have one of the following roles: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Merchant admin role&lt;\\\/strong&gt;&lt;\\\/li&gt; &lt;li&gt;&lt;strong&gt;Manage API credentials&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Webhooks&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Subscribe to the following webhook: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Standard webhooks&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;Limitations&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;ul&gt;&lt;li&gt;Your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;PCI compliance assesment&lt;\\\/a&gt; determines your &lt;a href=\\&quot;#collect-card-details\\&quot;&gt;integration options for card payments&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;For 3D Secure 2 authentication for shoppers using Chrome, your &lt;a href=\\&quot;https:\\\/\\\/developers.google.com\\\/search\\\/blog\\\/2020\\\/01\\\/get-ready-for-new-samesitenone-secure\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;cookies must use the &lt;code&gt;SameSite&lt;\\\/code&gt; attribute&lt;\\\/a&gt;. &lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;Setup steps&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Before you begin: &lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen#test-account\\&quot;&gt;Create your Adyen test account&lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;If you want to process payments using raw card data, contact your Adyen Account Manager to confirm that you are eligible.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;572979e4f54f785d3cc1e14627fadd95&quot;:&quot;&lt;h2 id=\\&quot;how-it-works\\&quot;&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For an API-only integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client&lt;\\\/strong&gt;: shows your custom UI where the shopper makes the payment. Passes data to and receives data from your payment server to handle the payment flow and additional actions on your client.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h2&gt;Integration steps&lt;\\\/h2&gt;\\n&lt;p&gt;The parts of your integration work together to handle the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, make an API request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Show the &lt;a href=\\&quot;#collect-shopper-details\\&quot;&gt;payment form to collect the shopper&#039;s payment details&lt;\\\/a&gt; in your UI.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment request&lt;\\\/a&gt; with the data that you have collected from the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;For some payment methods, you use your client to &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt; that your shopper must do. For example, you redirect your shopper to another website or show a QR code that the shopper uses to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps91523\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#collect-shopper-details\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabLWRJr90750\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;90750&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;11aa9baba62eeb959669ea70fb3e4b7e&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Android&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-android-66&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v66\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;:&quot;&lt;h2 id=\\&quot;build-your-payment-form\\&quot;&gt;Build your payment form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Create your payment form where the shopper enters their information. We recommend that you collect commonly-used &lt;a href=\\&quot;#information-in-the-payment-form\\&quot;&gt;shopper information in your payment form&lt;\\\/a&gt; to process a transactions, depending on your type of business.&lt;br \\\/&gt;\\n&lt;span id=\\&quot;collect-shopper-details\\&quot;&gt;&lt;\\\/span&gt;&lt;br \\\/&gt;\\nSome payment methods require you to collect, or optionally accept, additional information that you include in the payment request. For the additional information you must collect in your payment form for an individual payment method, go to our &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;guide for the individual payment method&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;We provide &lt;a href=\\&quot;#downloading-logos\\&quot;&gt;payment method and issuer logos that you can download&lt;\\\/a&gt; and use in your payment form.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;collect-card-details\\&quot;&gt;Credit and debit card details&lt;\\\/h3&gt;\\n&lt;p&gt;Because governing bodies and organizations regulate the handling of credit and debit card information strictly, you must make sure that you are compliant when collecting card details. When a shopper selects to pay with a card, use the integration option that corresponds to your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;level of PCI compliance&lt;\\\/a&gt;:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;(Recommended) Adyen&#039;s &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/custom-card-integration\\&quot;&gt;Custom Card Component&lt;\\\/a&gt; with encryption: our pre-built UI with logic to securely encrypt and handle payment card data.&lt;\\\/li&gt;\\n&lt;li&gt;Your own UI and logic to collect and handle &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/raw-card-data\\&quot;&gt;raw card data&lt;\\\/a&gt;: before you build an integration that collects raw credit and debit card data, you must &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;assess your PCI compliance according to the most extensive self-assessment form&lt;\\\/a&gt; and contact your Adyen Account Manager to confirm that you are eligible.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Information in the payment form&lt;\\\/h3&gt;\\n&lt;p&gt;After collecting information in your payment form, you must add it to corresponding API parameters that you include in the payment request.&lt;\\\/p&gt;\\n&lt;p&gt;For example, for commonly-used information:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Field in the payment form&lt;\\\/th&gt;\\n&lt;th&gt;API request parameter&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;First name&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperName.firstName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Last name&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperName.lastName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Email address&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperEmail&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Billing address (multiple fields)&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;billingAddress&lt;\\\/code&gt; (object)&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Shipping address (multiple fields)&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;deliveryAddress&lt;\\\/code&gt; (object)&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Phone number&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;telephoneNumber&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;3847c027124001dbd878122635d13126&quot;:&quot;&lt;div class=\\&quot;accordion-shortcode adl-accordion adl-accordion--max-height-transition\\&quot; data-expand=\\&quot;true\\&quot; data-ignore=\\&quot;anchorjs-link\\&quot;&gt;\\n    \\n    &lt;div class=\\&quot;adl-accordion__item\\&quot; style=\\&quot;\\&quot;&gt;\\n        &lt;div tabindex=\\&quot;0\\&quot; role=\\&quot;item\\&quot; aria-expanded=\\&quot;false\\&quot; class=\\&quot;adl-accordion__header\\&quot;&gt;\\n            &lt;i class=\\&quot;adl-accordion__toggle adl-icon-chevron-down\\&quot;&gt;&lt;\\\/i&gt;\\n            &lt;div class=\\&quot;adl-accordion__title-wrapper\\&quot; data-accordion=\\&quot;#downloading-logos\\&quot;&gt;\\n                                    &lt;h3 class=\\&quot;adl-accordion__title\\&quot;&gt;Downloading logos&lt;\\\/h3&gt;\\n                            &lt;\\\/div&gt;\\n        &lt;\\\/div&gt;\\n        &lt;div role=\\&quot;region\\&quot; class=\\&quot;adl-accordion__content\\&quot;&gt;\\n            \\n&lt;p&gt;If you are building your own UI, we provide payment method and issuing bank logos that you can use on your checkout page. The images are available in PNG format with different sizes and screen resolutions and in SVG format.&lt;\\\/p&gt;\\n&lt;p&gt;If you cannot find a payment method or issuer logo, contact our &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/ca\\\/ca\\\/contactUs\\\/support.shtml?form=other\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Support Team&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h4&gt;Payment method logos&lt;\\\/h4&gt;\\n&lt;p&gt;Download the images from the links below, specifying:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;img-size&lt;\\\/code&gt;: Specify the size for PNG format. Use the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;small&lt;\\\/strong&gt;: Image size 40x26 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;medium&lt;\\\/strong&gt;: Image size 77x50 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;large&lt;\\\/strong&gt;: Image size 154 x 100 pixels&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;suffix&lt;\\\/code&gt;: Specify the image density for PNG format. If not specified, the images will have the same size as the &lt;code&gt;img-size&lt;\\\/code&gt;.  Append any of the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;@2x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;@3x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-ldpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-hdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;pm-type&lt;\\\/code&gt;: The &lt;code&gt;paymentMethods.type&lt;\\\/code&gt; returned in the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response. For example, &lt;strong&gt;googlepay&lt;\\\/strong&gt; or &lt;strong&gt;primeiropay_boleto&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;For cards, the values you should use are specified under &lt;code&gt;brands&lt;\\\/code&gt; with &lt;code&gt;type&lt;\\\/code&gt;: &lt;strong&gt;scheme&lt;\\\/strong&gt;. For example, &lt;code&gt;mc&lt;\\\/code&gt;, &lt;code&gt;visa&lt;\\\/code&gt;, and &lt;code&gt;amex&lt;\\\/code&gt;. To get a generic card logo, set &lt;code&gt;pm-type&lt;\\\/code&gt; to &lt;strong&gt;card&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Download link for SVG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for SVG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[pm-type].svg\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Download link for PNG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for PNG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[img-size]\\\\\\\/[pm-type][suffix].png\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Examples:&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/mc.svg\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/mc.svg&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/large\\\/googlepay@2x.png\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/large\\\/googlepay@2x.png&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h4&gt;Issuing bank logos&lt;\\\/h4&gt;\\n&lt;p&gt;Some payment methods such as iDEAL present a list of issuing banks to the shopper.&lt;\\\/p&gt;\\n&lt;p&gt;Download the issuing bank logos from the links below, specifying:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;img-size&lt;\\\/code&gt;: Specify the size for PNG format. Use the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;small&lt;\\\/strong&gt;: Image size 40x26 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;medium&lt;\\\/strong&gt;: Image size 77x50 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;large&lt;\\\/strong&gt;: Image size 154 x 100 pixels&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;suffix&lt;\\\/code&gt;: Specify the image density for PNG format. If not specified, the images will have the same size as the &lt;code&gt;img-size&lt;\\\/code&gt;.  Append any of the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;@2x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;@3x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-ldpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-hdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;pm-type&lt;\\\/code&gt;: The &lt;code&gt;paymentMethods.type&lt;\\\/code&gt; in objects with &lt;code&gt;details.key&lt;\\\/code&gt; &lt;strong&gt;issuer&lt;\\\/strong&gt; returned in the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response. For example, &lt;strong&gt;ideal&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;issuerid&lt;\\\/code&gt;: The &lt;code&gt;details.items.id&lt;\\\/code&gt; referring to the issuing bank. For example, &lt;strong&gt;1121&lt;\\\/strong&gt; and &lt;strong&gt;1151&lt;\\\/strong&gt; for iDEAL.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Download link for SVG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for SVG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[pm-type]\\\\\\\/[issuerid].svg\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Download link for PNG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for PNG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[img-size]\\\\\\\/[pm-type]\\\\\\\/[issuerid][suffix].png\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Examples:&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/ideal\\\/1121.svg\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/ideal\\\/1121.svg&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/small\\\/ideal\\\/1151-xxhdpi.png\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/small\\\/ideal\\\/1151-xxhdpi.png&lt;\\\/a&gt;&lt;\\\/p&gt;\\n\\n        &lt;\\\/div&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;db49c111e8433691c1e04630078c82d4&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-android-66&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v66\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/com.adyen.adyen_checkout_example\\\\\\\/adyenPayment\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Store the &lt;code&gt;action.paymentData&lt;\\\/code&gt; object on your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#additional-action\\&quot;&gt;Handle the additional action&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQABAgBJp\\\\\\\/z\\\\\\\/T3+6P ...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;552e9ff28b875e2de02035247be99a2b&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabTfcjH35842\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;35842&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;TermUrl&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL for your page, to redirect the shopper to, after they finish authentication on the 3D Secure 2 page. This should be the same as the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; that you include when you &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;make a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-6067370540&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;TermUrl=https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;af3dd5c396d3d3217ddd545edf40d8cf&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the action you handled:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If you handled a redirect:\\n&lt;ul&gt;\\n&lt;li&gt;For a payment method redirect, pass the URL-decoded &lt;code&gt;redirectResult&lt;\\\/code&gt; and the complete &lt;code&gt;paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;li&gt;For a 3D Secure 2 redirect, pass the URL-decoded &lt;code&gt;MD&lt;\\\/code&gt;, &lt;code&gt;PaRes&lt;\\\/code&gt;, the complete &lt;code&gt;paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;li&gt;If you handled a non-redirect additional action: pass the complete &lt;code&gt;action.paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;What you do depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response includes an additional action.&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt; using the data from the latest  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response instead of the data from the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response without an action for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response without an action for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After the shopper finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;\\n  &lt;code&gt;resultCode&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;9339cccb051868e8f60981049948cdeb&quot;:&quot;&lt;h2 id=\\&quot;error-handling\\&quot;&gt;Error handling&lt;\\\/h2&gt;\\n&lt;p&gt;In case you encounter errors in your integration, refer to the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/error-codes\\&quot;&gt;API error codes&lt;\\\/a&gt;: If you receive a non-HTTP 200 response, use the &lt;code&gt;errorCode&lt;\\\/code&gt; to troubleshoot and modify your request.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/refusal-reasons\\&quot;&gt;Payment refusals&lt;\\\/a&gt;: If you receive an HTTP 200 response with an &lt;strong&gt;Error&lt;\\\/strong&gt; or &lt;strong&gt;Refused&lt;\\\/strong&gt; &lt;code&gt;resultCode&lt;\\\/code&gt;, check the refusal reason and, if possible, modify your request.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;51976743859edfbe0863f8222febf901&quot;:&quot;&lt;h2 id=\\&quot;test-and-go-live\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0&lt;a href=\\&quot;\\\/development-resources\\\/testing\\&quot;&gt;test your integration&lt;\\\/a&gt;. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting:\\n&lt;ul&gt;\\n&lt;li&gt;the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;, if you are using the Custom Card Component.&lt;\\\/li&gt;\\n&lt;li&gt;the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-D_Merchant.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-D&lt;\\\/a&gt;, if you are submitting raw card data.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.\\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;b21f96573eb957635d49f8525a08e0f2&quot;:&quot;&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps87947\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Set up notifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Receive confirmation when a payment is authorised or fails.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Payment modifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;eb7503ba900bc7e5413dcb6cad5932bb&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/67\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Android&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-android-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;cee28a11f5bca35d1d3c9c655a090400&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-android-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/com.adyen.adyen_checkout_example\\\\\\\/adyenPayment\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;c32bceaef0b7af884b98577f5864204f&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabbqIK769166\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;69166&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;TermUrl&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL for your page, to redirect the shopper to, after they finish authentication on the 3D Secure 2 page. This should be the same as the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; that you include when you &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;make a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-6067370540&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;TermUrl=https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;48123ef61e1fe482c7dd9663dc32b5ca&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;864ea94c6bee142e82d168482275b8d0&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/68\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Android&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-android-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;c4185b4bbfa31698e658532bdd55ad63&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-android-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/com.adyen.adyen_checkout_example\\\\\\\/adyenPayment\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;ab157ff912c4eaea22a34a75a8369fc4&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;efaa9a6fa8107ee4d40bb86150bad8db&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/69\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Android&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-android-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;c32c75c1885cb659a8ae527a3e7166f5&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-android-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/com.adyen.adyen_checkout_example\\\\\\\/adyenPayment\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabWHalN41080\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;41080&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-1374613331&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\\\\\\\\\/checkoutshopper\\\\\\\\\\\\\\\/threeDS\\\\\\\\\\\\\\\/checkoutRedirect\\\\\\\\\\\\\\\/... \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;236ee43ba37e5d284f4c2d3885b07fe8&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;528115e2093e470182270fd56eaffee9&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/70\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Android&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-android-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest()\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .countryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  .channel(PaymentMethodsRequest.ChannelEnum.ANDROID)\\\\n  .shopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.3.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentMethodsRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentMethodsRequest = new PaymentMethodsRequest();\\\\n$paymentMethodsRequest\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setCountryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  -&amp;gt;setChannel(\\\\&amp;quot;Android\\\\&amp;quot;)\\\\n  -&amp;gt;setShopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .NET API Library v32.2.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest\\\\n{\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode = \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  Channel = PaymentMethodsRequest.ChannelEnum.Android,\\\\n  ShopperLocale = \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.1.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentMethodsRequest := checkout.PaymentMethodsRequest{\\\\n  Amount: &amp;amp;amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode: common.PtrString(\\\\&amp;quot;NL\\\\&amp;quot;),\\\\n  Channel: common.PtrString(\\\\&amp;quot;Android\\\\&amp;quot;),\\\\n  ShopperLocale: common.PtrString(\\\\&amp;quot;nl-NL\\\\&amp;quot;),\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v11.0.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Android&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.Android,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;0aaac5f11d382280ec7f866520e4f57b&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-android-70&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v70\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/com.adyen.adyen_checkout_example\\\\\\\/adyenPayment\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8e0d2ffeaae92a7b41df5d1dedde2003&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-70&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v70\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;c8429a7176aebdd13387e32b743ee82b&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/71\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Android&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-android-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest()\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .countryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  .channel(PaymentMethodsRequest.ChannelEnum.ANDROID)\\\\n  .shopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.3.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentMethodsRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentMethodsRequest = new PaymentMethodsRequest();\\\\n$paymentMethodsRequest\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setCountryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  -&amp;gt;setChannel(\\\\&amp;quot;Android\\\\&amp;quot;)\\\\n  -&amp;gt;setShopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .NET API Library v32.2.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest\\\\n{\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode = \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  Channel = PaymentMethodsRequest.ChannelEnum.Android,\\\\n  ShopperLocale = \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.1.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentMethodsRequest := checkout.PaymentMethodsRequest{\\\\n  Amount: &amp;amp;amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode: common.PtrString(\\\\&amp;quot;NL\\\\&amp;quot;),\\\\n  Channel: common.PtrString(\\\\&amp;quot;Android\\\\&amp;quot;),\\\\n  ShopperLocale: common.PtrString(\\\\&amp;quot;nl-NL\\\\&amp;quot;),\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v11.0.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Android&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.Android,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Cards\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;2583f4c0faa0a14f403bd0ac5c9595c8&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-android-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/com.adyen.adyen_checkout_example\\\\\\\/adyenPayment\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;786c1dafef7066cbc356a23eb0c207ef&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentDetailsResponse response = service.paymentsDetails(paymentDetailsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentsDetails($paymentDetailsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentsDetails(paymentDetailsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentDetailsRequest = {\\\\n  details: {\\\\n    redirectResult: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsDetailsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentDetailsRequest(paymentDetailsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentsDetails(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :details =&amp;gt; {\\\\n    :redirectResult =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cyI6IlkifQ==&#039;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;4be4d14a0f25d43d2938f695696205bf&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/71\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Android&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-android-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Cards\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;710849480aa16cde8347624e5827ac0e&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-android-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;adyencheckout:\\\\\\\/\\\\\\\/com.adyen.adyen_checkout_example\\\\\\\/adyenPayment\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8f73244559657311010bcfd0a3711a82&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.0\\\\nimport com.adyen.Client;\\\\nimport com.adyen.enums.Environment;\\\\nimport com.adyen.model.checkout.*;\\\\nimport com.adyen.model.RequestOptions;\\\\nimport com.adyen.service.checkout.*;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentDetailsResponse response = service.paymentsDetails(paymentDetailsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentsDetails($paymentDetailsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentsDetails(paymentDetailsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsDetailsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentDetailsRequest(paymentDetailsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentsDetails(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :details =&amp;gt; {\\\\n    :redirectResult =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cyI6IlkifQ==&#039;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;}}}},&quot;react_native&quot;:{&quot;label&quot;:&quot;React Native&quot;,&quot;integrations&quot;:{&quot;drop-in&quot;:{&quot;label&quot;:&quot;Drop-in&quot;,&quot;description&quot;:&quot;Use our pre-built UI for accepting payments&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;React Native Drop-in&lt;\\\/h2&gt;\\n&lt;p&gt;Render a list of available payment methods anywhere in your app.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=react%20native%20drop-in\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Lowest development time to integrate payment methods&lt;\\\/li&gt;\\n&lt;li&gt;UI styling customization for the list of payment methods&lt;\\\/li&gt;\\n&lt;li&gt;Adding payment methods to the list requires no extra development time&lt;\\\/li&gt;\\n&lt;li&gt;3D Secure 2 support built in&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;visual_images&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/react-native\\\/dropin\\\/visual\\\/react-dropin.svg&quot;,&quot;external_content&quot;:&quot;&lt;h3&gt;Adyen React Native on GitHub&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-react-native\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View the Adyen React Native repository&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/adyen-examples\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View our example integrations&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;external_icon&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/react-native\\\/github\\\/github-mark.png&quot;,&quot;versions&quot;:{&quot;version-2.9.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;e97a14b6612ecc362524accca3ba82d8&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;aa5d2d8d40cfd61b3dbcf8939a633bbd&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.9.1&quot;}},&quot;version-2.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;e97a14b6612ecc362524accca3ba82d8&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;aa5d2d8d40cfd61b3dbcf8939a633bbd&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;2.9.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70}},&quot;version-2.8.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;e97a14b6612ecc362524accca3ba82d8&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.8.1&quot;}},&quot;version-2.8.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;e97a14b6612ecc362524accca3ba82d8&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.8.0&quot;}},&quot;version-2.7.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;e97a14b6612ecc362524accca3ba82d8&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.7.3&quot;}},&quot;version-2.7.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;e97a14b6612ecc362524accca3ba82d8&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.7.2&quot;}},&quot;version-2.7.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;e97a14b6612ecc362524accca3ba82d8&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.7.1&quot;}},&quot;version-2.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;e97a14b6612ecc362524accca3ba82d8&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.7.0&quot;}},&quot;version-2.6.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;e97a14b6612ecc362524accca3ba82d8&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.6.0&quot;}},&quot;version-2.5.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;e97a14b6612ecc362524accca3ba82d8&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.5.0&quot;}},&quot;version-2.4.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;e97a14b6612ecc362524accca3ba82d8&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.4.1&quot;}},&quot;version-2.4.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;e97a14b6612ecc362524accca3ba82d8&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;2.4.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70}},&quot;version-2.3.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;1c07ebc7d218955246e62a612d3cc52e&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.3.0&quot;}},&quot;version-2.2.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;1c07ebc7d218955246e62a612d3cc52e&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.2.0&quot;}},&quot;version-2.1.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;1c07ebc7d218955246e62a612d3cc52e&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.1.1&quot;}},&quot;version-2.1.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;1c07ebc7d218955246e62a612d3cc52e&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.1.0&quot;}},&quot;version-2.0.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;1c07ebc7d218955246e62a612d3cc52e&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.0.1&quot;}},&quot;version-2.0.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;323d67dd1bb01331e5600c2736f06dd3&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;d5beed17e67b3b046f177799f2d62ce2&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;1c07ebc7d218955246e62a612d3cc52e&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;2.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70}},&quot;version-1.2.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;fe6d097d4a1e3e3531d416040ceda8a7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ee2cac4d96b4f4128057cc0b4a7abe38&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;40d6185e0c46d6511c249ee4805241dc&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;c8b28afe02defa5782ecbeb11562fe4d&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;1.2.1&quot;}},&quot;version-1.2.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;fe6d097d4a1e3e3531d416040ceda8a7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ee2cac4d96b4f4128057cc0b4a7abe38&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;40d6185e0c46d6511c249ee4805241dc&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;c8b28afe02defa5782ecbeb11562fe4d&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;1.2.0&quot;}},&quot;version-1.1.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;fe6d097d4a1e3e3531d416040ceda8a7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ee2cac4d96b4f4128057cc0b4a7abe38&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;40d6185e0c46d6511c249ee4805241dc&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;c8b28afe02defa5782ecbeb11562fe4d&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;1.1.0&quot;}},&quot;version-1.0.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;fe6d097d4a1e3e3531d416040ceda8a7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;ee2cac4d96b4f4128057cc0b4a7abe38&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b5cba220bebe12f77e74af17a72d3d72&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;40d6185e0c46d6511c249ee4805241dc&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;c8b28afe02defa5782ecbeb11562fe4d&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;0e837e334da64607003e387f31b07ccc&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;061ea6c8bd33a4cb9576a5472914b855&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;c2c1c71b5866108ae99a654955bb7c60&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;6982393a1a93e71bf726b71350ff81e9&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;1.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;69c226f2ad44f41e364103e82efde537&quot;:&quot;&lt;p&gt;Drop-in is our pre-built UI solution for accepting payments in your app. Drop-in shows all payment methods as a list, in the same block. Your server makes API requests to the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt;,  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt;, and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; endpoints.&lt;\\\/p&gt;\\n&quot;,&quot;fe6d097d4a1e3e3531d416040ceda8a7&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you begin, take into account the following requirements, limitations, and preparations.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th style=\\&quot;text-align: left;\\&quot;&gt;Requirement&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: left;\\&quot;&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;Integration type&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Use this information to build an online payments integration.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/account\\\/user-roles\\&quot;&gt;Customer Area roles&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have the following roles: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Merchant admin role&lt;\\\/strong&gt;&lt;\\\/li&gt; &lt;li&gt;&lt;strong&gt;Manage API credentials&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials\\&quot;&gt;Adyen API credentials&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have created the following: &lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials\\\/#new-credential\\&quot;&gt;API credential&lt;\\\/a&gt;&lt;\\\/li&gt; &lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials\\\/#generate-api-key\\&quot;&gt;API key&lt;\\\/a&gt;&lt;\\\/li&gt; &lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\\/#get-your-client-key\\&quot;&gt;Client key&lt;\\\/a&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials\\\/roles\\\/\\&quot;&gt;Adyen API credential roles&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have the &lt;a href=\\&quot;\\\/development-resources\\\/api-credentials\\\/roles\\\/#roles-for-payments\\&quot;&gt;roles for payments&lt;\\\/a&gt; that are assigned by default.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Webhooks&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Subscribe to the following webhooks: &lt;ul&gt;&lt;li&gt;Standard webhook with &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\\/webhook-types\\\/#default-event-codes\\&quot;&gt;default event codes&lt;\\\/a&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;Limitations&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that your integration follows our recommended best practices: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/online-payments\\\/best-practices\\\/#avoid-iframe-elements\\&quot;&gt;&amp;lt;iframe&amp;gt;&lt;\\\/a&gt;&lt;\\\/strong&gt;: an &amp;lt;iframe&gt; must be hosted on the same domain as the parent window to support payment flows that use redirects.&lt;\\\/li&gt;&lt;li&gt; &lt;strong&gt;&lt;a href=\\&quot;\\\/online-payments\\\/best-practices\\\/#avoid-webviews\\&quot;&gt;WebViews&lt;\\\/a&gt;&lt;\\\/strong&gt;: we do not recommend using WebViews in native apps due to security and functionality limitations. Use native equivalents instead.&lt;\\\/li&gt;&lt;li&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/online-payments\\\/best-practices\\\/#manage-server-side-rendering-ssr-\\&quot;&gt;Server-side Rendering (SSR)&lt;\\\/a&gt;&lt;\\\/strong&gt;: if you use SSR, ensure the &lt;code&gt;AdyenCheckout&lt;\\\/code&gt; instance and Components are initialized on the client side. &lt;\\\/li&gt;&lt;li&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/online-payments\\\/best-practices\\\/#supported-browsers\\&quot;&gt;Browser support&lt;\\\/a&gt;&lt;\\\/strong&gt;: we support recent versions of all major browsers.&lt;\\\/li&gt;&lt;\\\/ul&gt; For &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;3D Secure 2&lt;\\\/a&gt;: &lt;ul&gt;&lt;li&gt; A strict &lt;a href=\\&quot;https:\\\/\\\/developer.mozilla.org\\\/en-US\\\/docs\\\/Web\\\/HTTP\\\/Guides\\\/CSP\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Content Security Policy (CSP)&lt;\\\/a&gt; can prevent native 3D Secure 2 challenges from being loaded on your website, because loading the 3D Secure 2 interface requires adding more URLs to your CSP. Adyen does not maintain a list of all URLs. You can specify to use the redirect flow when creating a session if you do not want to adjust your CSP. &lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;Setup steps&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have done the following: &lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/integration-checklist\\\/#set-up-your-test-account\\&quot;&gt;Set up your test account&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/integration-checklist\\\/#set-up-your-test-account\\&quot;&gt;Got an overview of what is required before you accept live payments&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;ee2cac4d96b4f4128057cc0b4a7abe38&quot;:&quot;&lt;h2&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Drop-in integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps50378\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#add\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The shopper goes to the checkout page.&lt;\\\/li&gt;\\n&lt;li&gt;Your server uses the shopper&#039;s country and currency information from your client to get available payment methods.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in shows the available payment methods,  collects the shopper&#039;s payment details, handles additional actions, and shows the payment result to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;Your webhook server receives the notification containing the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/react-native\\\/1-0-0\\\/02.how-it-works\\\/drop-in-flow.jpg\\&quot; \\\/&gt;&lt;\\\/p&gt;\\n&quot;,&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabTEOfJ19664\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;19664&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;b5cba220bebe12f77e74af17a72d3d72&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.&lt;\\\/p&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;We use the optional parameters to tailor the list of available payment methods to your shopper.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The platform where the payment is taking place. For example, when you set this to &lt;strong&gt;iOS&lt;\\\/strong&gt;, Adyen returns only the payment methods available for iOS.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. Adyen returns only the payment methods available in this country. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, the &lt;code&gt;shopperlocale&lt;\\\/code&gt; is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code. The front end also uses this locale.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example, to get the available payment methods for a shopper in the &lt;strong&gt;Netherlands&lt;\\\/strong&gt;, for a payment of &lt;strong&gt;EUR&amp;nbsp;10&lt;\\\/strong&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;advanced-flow-post-payment-methods-request&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Android&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available &lt;code&gt;paymentMethods&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;\\\/paymentMethods response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;Cards\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;scheme\\\\\\&quot;\\\\n    ...\\\\n  },\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n  },\\\\n  ...\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Pass the response to your client app. Use this in the next step to show available payment methods to the shopper.&lt;\\\/p&gt;&quot;,&quot;40d6185e0c46d6511c249ee4805241dc&quot;:&quot;&lt;h2&gt;Add Adyen Drop-in to your app&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3 id=\\&quot;add\\&quot;&gt;1. Add Adyen React Native to your project&lt;\\\/h3&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-js\\&quot;&gt;$ yarn add @adyen\\\/react-native&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;h3&gt;2. Install&lt;\\\/h3&gt;\\n\\n&lt;div id=\\&quot;tab3IVGt62285\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;62285&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;iOS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;Run &amp;lt;code&amp;gt;pod install&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;In your &amp;lt;code&amp;gt;AppDelegate.m&amp;lt;\\\\\\\/code&amp;gt; file, add a return URL handler for handling redirects from other apps. For example:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;iOS return URL handler&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import &amp;amp;lt;adyen-react-native\\\\\\\\\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;\\\\\\\\n\\\\\\\\n{\\\\\\\\n...\\\\\\\\n- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary&amp;amp;lt;UIApplicationOpenURLOptionsKey,id&amp;amp;gt; *)options {\\\\\\\\n  return [ADYRedirectComponent applicationDidOpenURL:url];\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ios_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Android&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Add &amp;lt;code&amp;gt;AdyenCheckoutService&amp;lt;\\\\\\\/code&amp;gt; to your app&amp;#039;s manifest file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add AdyenCheckoutService to the manifest file.&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;service android:name=\\\\\\\\\\\\&amp;quot;com.adyenreactnativesdk.component.dropin.AdyenCheckoutService\\\\\\\\\\\\&amp;quot; android:exported=\\\\\\\\\\\\&amp;quot;false\\\\\\\\\\\\&amp;quot; \\\\\\\\\\\\\\\/&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Provide your checkout &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/guide\\\\\\\/components\\\\\\\/activities\\\\\\\/intro-activities\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;activity&amp;lt;\\\\\\\/a&amp;gt; to &amp;lt;code&amp;gt;AdyenCheckout&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Provide checkout activity to AdyenCheckout&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;@Override\\\\\\\\nprotected void onCreate(Bundle savedInstanceState) {\\\\\\\\n    super.onCreate(savedInstanceState);\\\\\\\\n    AdyenCheckout.setLauncherActivity(this);\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;android_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;c8b28afe02defa5782ecbeb11562fe4d&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;3. Create a configuration object&lt;\\\/h3&gt;\\n&lt;p&gt;Create a configuration object with the following properties:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/react-native\\\/drop-in#test-and-go-live\\&quot;&gt;live environments&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;For iOS, this is the URL to your app, where the shopper should return, after a redirection. Maximum of 1024 characters. For more information on setting a custom URL scheme for your app, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/uikit\\\/inter-process_communication\\\/allowing_apps_and_websites_to_link_to_your_content\\\/defining_a_custom_url_scheme_for_your_app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;. &lt;br&gt; For Android, this value is automatically overridden by &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you want to show the amount on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you want to show the amount on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create a configuration object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const configuration = {\\\\n    \\\\\\\/\\\\\\\/ When you are ready to accept live payments, change the value to one of our live environments.\\\\n    environment: &#039;test&#039;,\\\\n    clientKey: &#039;YOUR_CLIENT_KEY&#039;,\\\\n    \\\\\\\/\\\\\\\/ For iOS, this is the URL to your app. For Android, this is automatically overridden by AdyenCheckout.\\\\n    returnUrl: &#039;your-app:\\\\\\\/\\\\\\\/&#039;,\\\\n    \\\\\\\/\\\\\\\/ Must be included to show the amount on the Pay button.\\\\n    countryCode: &#039;NL&#039;,\\\\n    amount: { currency: &#039;EUR&#039;, value: 1000 }\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;0e837e334da64607003e387f31b07ccc&quot;:&quot;&lt;h3&gt;4. Initialize Drop-in&lt;\\\/h3&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Configure &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;, setting the following:&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;config&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your &lt;a href=\\&quot;#configure\\&quot;&gt;configuration object&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethods&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full response from the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; endpoint.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Callback that uses &lt;code&gt;data&lt;\\\/code&gt; to make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request when the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button and the payment details are valid.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Callback that uses &lt;code&gt;data&lt;\\\/code&gt; to make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request when a payment requires additional details, for example to authenticate with 3D Secure or to pay using a QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onError&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Callback that handles errors.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;In your &lt;code&gt;onSubmit&lt;\\\/code&gt;, &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;, and &lt;code&gt;onError&lt;\\\/code&gt; callbacks, you must call &lt;code&gt;component.hide(result)&lt;\\\/code&gt; to dismiss the payment UI when the API request is completed and the payment result is known.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;2\\&quot;&gt;\\n&lt;li&gt;Set &lt;code&gt;AdyenCheckout&lt;\\\/code&gt; as the &lt;a href=\\&quot;https:\\\/\\\/reactjs.org\\\/docs\\\/context.html\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;context&lt;\\\/a&gt; for your &lt;a href=\\&quot;https:\\\/\\\/reactnative.dev\\\/docs\\\/view\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;View&lt;\\\/code&gt;\\n&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;For example:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Configure AdyenCheckout&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Import AdyenCheckout.\\\\nimport { AdyenCheckout } from &#039;@adyen\\\\\\\/react-native&#039;;\\\\nimport { useCallback } from &#039;react&#039;;\\\\n\\\\nconst submitHandler = useCallback(\\\\n    (data, component, extra) =&amp;gt; {\\\\n        \\\\\\\/\\\\\\\/ Make a \\\\\\\/payments request.\\\\n        \\\\\\\/\\\\\\\/ When this callback is executed, you must call `component.hide(true | false)` to dismiss the payment UI.\\\\n    },\\\\n    [...],\\\\n);\\\\n\\\\nconst errorHandler = useCallback(\\\\n    (error, component) =&amp;gt; {\\\\n        \\\\\\\/\\\\\\\/ Handle errors or termination by shopper.\\\\n        \\\\\\\/\\\\\\\/ When this callback is executed, you must call `component.hide(false)` to dismiss the payment UI.\\\\n    },\\\\n    [...],\\\\n);\\\\n\\\\nconst additionalDetailsHandler = useCallback(\\\\n    (data, component) =&amp;gt; {\\\\n        \\\\\\\/\\\\\\\/ Make a \\\\\\\/payments\\\\\\\/details request.\\\\n        \\\\\\\/\\\\\\\/ When this callback is executed, you must call `component.hide(true | false)` to dismiss the payment UI.\\\\n    },\\\\n    [...],\\\\n);\\\\n\\\\n&amp;lt;AdyenCheckout\\\\n    config={configuration}\\\\n    paymentMethods={paymentMethods}\\\\n    onSubmit={submitHandler}\\\\n    onError={errorHandler}\\\\n    onAdditionalDetails={additionalDetailsHandler}\\\\n&amp;gt;\\\\n    &amp;lt;YourCheckoutView\\\\\\\/&amp;gt;\\\\n&amp;lt;\\\\\\\/AdyenCheckout&amp;gt;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;Create a way, like a button, for &lt;code&gt;AdyenCheckout&lt;\\\/code&gt; to call the &lt;code&gt;start&lt;\\\/code&gt; function.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create a way to start Drop-in&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Import useAdyenCheckout.\\\\nimport { useAdyenCheckout } from &#039;@adyen\\\\\\\/react-native&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Set your View to use AdyenCheckout as the context.\\\\nconst YourCheckoutView = () =&amp;gt; {\\\\n    const { start } = useAdyenCheckout();\\\\n\\\\n    return (\\\\n    \\\\\\\/\\\\\\\/ Create a way, like a checkout button, that starts Drop-in.\\\\n        &amp;lt;Button\\\\n            title=\\\\&amp;quot;Checkout\\\\&amp;quot;\\\\n            \\\\\\\/\\\\\\\/ Use dropIn to show the full list of available payment methods.\\\\n            onPress={() =&amp;gt; { start(&#039;dropIn&#039;); }} \\\\\\\/&amp;gt;\\\\n    );\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The context starts Adyen&#039;s &lt;a href=\\&quot;https:\\\/\\\/reactnative.dev\\\/docs\\\/intro-react-native-components#native-components\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Native Component&lt;\\\/a&gt; for Drop-in.&lt;\\\/p&gt;\\n&quot;,&quot;d559d40a9d21e6e3d29fbcb658493c0b&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, the Native Component calls &lt;code&gt;onSubmit&lt;\\\/code&gt;, and you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method from the &lt;code&gt;payload&lt;\\\/code&gt; of the &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client app.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt; &lt;br&gt; For Android, this value is automatically overridden by &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;td&gt;For iOS, this is the URL to your app, where the shopper should return, after a redirection. Maximum of 1024 characters. For more information on setting a custom URL scheme for your app, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/uikit\\\/inter-process_communication\\\/allowing_apps_and_websites_to_link_to_your_content\\\/defining_a_custom_url_scheme_for_your_app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;.  &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;errors\\&quot;&gt;Errors&lt;\\\/h3&gt;\\n&lt;p&gt;If an error occurs, you get an error object from the &lt;code&gt;onError&lt;\\\/code&gt; callback with one of the following error codes:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Error code&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;th&gt;Action to take&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;canceledByShopper&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper canceled the payment.&lt;\\\/td&gt;\\n&lt;td&gt;Take the shopper back to the checkout page.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;notSupported&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method isn&#039;t supported by the shopper&#039;s device.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that the payment method isn&#039;t supported by their device.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noClientKey&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;clientKey&lt;\\\/code&gt; configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPayment&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;payment&lt;\\\/code&gt; information configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;invalidPaymentMethods&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t parse the &lt;code&gt;paymentMethods&lt;\\\/code&gt; list, or the list is empty.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPaymentMethod&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t find the selected payment method.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that their selected payment method is currently unavailable.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;061ea6c8bd33a4cb9576a5472914b855&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;To handle these additional front-end actions, the &lt;code&gt;AdyenCheckout&lt;\\\/code&gt; provides a &lt;code&gt;handle&lt;\\\/code&gt; function.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Call &lt;code&gt;handle&lt;\\\/code&gt; from one of Adyen&#039;s Native Components and pass the &lt;code&gt;action&lt;\\\/code&gt; to it. For example:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Handle the action&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ Call the handle function from the Native Component corresponding to the payment method.\\\\nnativeComponent.handle(action)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The Native Component performs the additional action on the client side.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;You handle the payment data, depending on the value of &lt;code&gt;action.type&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, Drop-in redirects your shopper to another website to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;When the shopper returns to your app, Drop-in calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;If the shopper fails to return to your app, you do not get the additional data to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must use a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows the QR code to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;When the shopper uses the QR code to complete the payment, Drop-in calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows a different UI in an overlay.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper uses the UI overlay to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows the voucher to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;When the shopper completes the additional action with the voucher (for example: saving it to their digital wallet or forwarding it to their email), Drop-in calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Drop-in shows the instructions for the additional action to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper does the additional action.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;e8497800251164596b4a099e37060eb1&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your app, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request including the full &lt;code&gt;data&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to send additional payment details&#039;\\&quot; :id=\\&quot;&#039;details-request-component&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{hint:object passed from your client app}STATE_DATA{\\\\\\\/hint}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nString xApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nClient client = new Client(xApiKey,Environment.TEST);\\\\nCheckout checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nPaymentsDetailsRequest paymentsDetailsRequest = STATE_DATA;\\\\nPaymentsResponse paymentsDetailsResponse = checkout.paymentsDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\n$params = STATE_DATA;\\\\n$result = $service-&amp;gt;paymentsDetails($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed.\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from the client app, deserialized from JSON to a data structure.\\\\nvar paymentsDetailsRequest = STATE_DATA;\\\\nvar paymentsDetailsResponse = checkout.PaymentDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;[ADYEN_API_KEY]&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\ncheckout.paymentsDetails(STATE_DATA).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;[ADYEN_API_KEY]\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nreq := STATE_DATA;\\\\nres, httpRes, err := client.Checkout.PaymentsDetails(&amp;amp;req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresult = adyen.checkout.payments_details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresponse = adyen.checkout.payments.details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client\\\\n   puts response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode to your client\\\\n   puts response.body[:resultCode]\\\\nend&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response from your server to your client app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After Drop-in finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;\\n  &lt;code&gt;resultCode&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;c2c1c71b5866108ae99a654955bb7c60&quot;:&quot;&lt;h2 id=\\&quot;test-and-go-live\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. Review the process to start accepting payments on &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?=1#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.\\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;Load Drop-in from one of our live environments and set the &lt;code&gt;environment&lt;\\\/code&gt; to match your live endpoints:&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;environment&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-eu&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-au&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;US&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-us&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;6982393a1a93e71bf726b71350ff81e9&quot;:&quot;&lt;h2 id=\\&quot;next-steps\\&quot;&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps87029\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Modify payments&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods#add-payment-methods-to-your-account\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Tokenization&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Save shopper payment details for later payments.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;e2985df29c09cf3014a42b5cb69515b7&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you begin to integrate, make sure you have followed the &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen guide&lt;\\\/a&gt; to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Get an overview of the steps needed to accept live payments.&lt;\\\/li&gt;\\n&lt;li&gt;Create your test account.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After you have created your test account:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt; to know the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;323d67dd1bb01331e5600c2736f06dd3&quot;:&quot;&lt;h2&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Drop-in integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps62888\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#add\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The shopper goes to the checkout page.&lt;\\\/li&gt;\\n&lt;li&gt;Your server uses the shopper&#039;s country and currency information from your client to get available payment methods.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in shows the available payment methods,  collects the shopper&#039;s payment details, handles additional actions, and shows the payment result to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;Your webhook server receives the notification containing the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/react-native\\\/1-0-0\\\/02.how-it-works\\\/drop-in-flow.jpg\\&quot; \\\/&gt;&lt;\\\/p&gt;\\n&quot;,&quot;d5beed17e67b3b046f177799f2d62ce2&quot;:&quot;&lt;h2&gt;Add Adyen Drop-in to your app&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3 id=\\&quot;add\\&quot;&gt;1. Add Adyen React Native to your project&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Add Adyen React Native&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;$ yarn add @adyen\\\\\\\/react-native\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;h3&gt;2. Install&lt;\\\/h3&gt;\\n\\n&lt;div id=\\&quot;tabB8crj5084\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;5084&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;iOS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;Run &amp;lt;code&amp;gt;pod install&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;In your &amp;lt;code&amp;gt;AppDelegate.m&amp;lt;\\\\\\\/code&amp;gt; file, add a return URL handler for handling redirects from other apps. For example:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;iOS return URL handler&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import &amp;amp;lt;adyen-react-native\\\\\\\\\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;\\\\\\\\n\\\\\\\\n{\\\\\\\\n...\\\\\\\\n- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary&amp;amp;lt;UIApplicationOpenURLOptionsKey,id&amp;amp;gt; *)options {\\\\\\\\n  return [ADYRedirectComponent applicationDidOpenURL:url];\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;If you use &amp;lt;code&amp;gt;RCTLinkingManager&amp;lt;\\\\\\\/code&amp;gt; or other ways of deep linking, use &amp;lt;code&amp;gt;ADYRedirectComponent.applicationDidOpenURL&amp;lt;\\\\\\\/code&amp;gt; first:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Return URL handler with deep linking&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import &amp;amp;lt;adyen-react-native\\\\\\\\\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;\\\\\\\\n\\\\\\\\n{\\\\\\\\n...\\\\\\\\n- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary&amp;amp;lt;UIApplicationOpenURLOptionsKey,id&amp;amp;gt; *)options {\\\\\\\\n  return [ADYRedirectComponent applicationDidOpenURL:url] || [super application:application openURL:url options:options] || [RCTLinkingManager application:application openURL:url options:options];\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;If you want to &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/xcode\\\\\\\/supporting-universal-links-in-your-app\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;support universal links in your app&amp;lt;\\\\\\\/a&amp;gt;, add the following return URL handler instead:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Return handler with universal link support&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import &amp;amp;lt;adyen-react-native\\\\\\\\\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;\\\\\\\\n\\\\\\\\n{\\\\\\\\n...\\\\\\\\n- (BOOL)application:(UIApplication *)application continueUserActivity:(nonnull NSUserActivity *)userActivity restorationHandler:(nonnull void (^)(NSArray&amp;amp;lt;id&amp;amp;lt;UIUserActivityRestoring&amp;amp;gt;&amp;amp;gt; * _Nullable))restorationHandler {\\\\\\\\n  if ([[userActivity activityType] isEqualToString:NSUserActivityTypeBrowsingWeb]) {\\\\\\\\n   NSURL *url = [userActivity webpageURL];\\\\\\\\n    if (![url isEqual:[NSNull null]] &amp;amp;amp;&amp;amp;amp; [ADYRedirectComponent applicationDidOpenURL:url]) {\\\\\\\\n      return YES;\\\\\\\\n    }\\\\\\\\n  }\\\\\\\\n  BOOL result = [RCTLinkingManager application:application continueUserActivity:userActivity restorationHandler:restorationHandler];\\\\\\\\n  return [super application:application continueUserActivity:userActivity restorationHandler:restorationHandler] || result;\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice note\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If your &amp;lt;code&amp;gt;Podfile&amp;lt;\\\\\\\/code&amp;gt; has &amp;lt;code&amp;gt;use_frameworks!&amp;lt;\\\\\\\/code&amp;gt;, import the redirect component using underscores (&amp;lt;strong&amp;gt;_&amp;lt;\\\\\\\/strong&amp;gt;) instead of hyphens(&amp;lt;strong&amp;gt;-&amp;lt;\\\\\\\/strong&amp;gt;):&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-js\\\\&amp;quot;&amp;gt;#import &amp;amp;lt;adyen_react_native\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ios_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Android&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Provide your checkout &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/guide\\\\\\\/components\\\\\\\/activities\\\\\\\/intro-activities\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;activity&amp;lt;\\\\\\\/a&amp;gt; to &amp;lt;code&amp;gt;AdyenCheckout&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Provide checkout activity to AdyenCheckout&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;@Override\\\\\\\\nprotected void onCreate(Bundle savedInstanceState) {\\\\\\\\n    super.onCreate(savedInstanceState);\\\\\\\\n    AdyenCheckout.setLauncherActivity(this);\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;To enable standalone redirect components, return the URL handler to your Checkout activity &amp;lt;code&amp;gt;onNewIntent&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Return URL handler to onNewIntent&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;@Override\\\\\\\\npublic void onNewIntent(Intent intent) {\\\\\\\\n     super.onNewIntent(intent);\\\\\\\\n     AdyenCheckout.handle(intent);\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;android_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Expo&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;notices green\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;p&amp;gt;The library is not compatible with ExpoGo and is only available with the Expo managed workflow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Add the Adyen React Native plugin to your &amp;lt;code&amp;gt;app.json&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add Adyen React Native&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n  \\\\\\\\\\\\&amp;quot;expo\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n    \\\\\\\\\\\\&amp;quot;plugins\\\\\\\\\\\\&amp;quot;: [\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/react-native\\\\\\\\\\\\&amp;quot;]\\\\\\\\n  }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;expo_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;1c07ebc7d218955246e62a612d3cc52e&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;3. Create a configuration object&lt;\\\/h3&gt;\\n&lt;p&gt;Create a configuration object with the following properties:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/\\\/online-payments\\\/build-your-integration\\\/sessions-flow?platform=React%2BNative&amp;amp;integration=Drop-in#test-and-go-live\\&quot;&gt;live environments&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create a configuration object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import { Configuration } from &#039;@adyen\\\\\\\/react-native&#039;;\\\\n\\\\nconst configuration: Configuration = {\\\\n  environment: &#039;test&#039;, \\\\\\\/\\\\\\\/ When you&#039;re ready to accept real payments, change the value to a suitable live environment.\\\\n  clientKey: &#039;YOUR_CLIENT_KEY&#039;,\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;To add configuration for specific payment methods, add these in a payment method specific configuration object. For example, for Apple Pay: &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Add configuration for Apple Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import { Configuration } from &#039;@adyen\\\\\\\/react-native&#039;;\\\\n\\\\nconst configuration: Configuration = {\\\\n  environment: &#039;test&#039;, \\\\\\\/\\\\\\\/ When you&#039;re ready to accept real payments, change the value to a suitable live environment.\\\\n  clientKey: &#039;YOUR_CLIENT_KEY&#039;,\\\\n  applepay: {\\\\n    merchantID: &#039;APPLE_PAY_MERCHANT_ID&#039;,\\\\n    merchantName: &#039;APPLE_PAY_MERCHANT_NAME&#039;\\\\n  }\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;h4&gt;Optional configuration&lt;\\\/h4&gt;\\n&lt;p&gt;Optionally, you can configure the following properties for Drop-in.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPreselectedStoredPaymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;When enabled, shows the preselected stored payment method view. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;skipListWhenSinglePaymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Set to &lt;strong&gt;true&lt;\\\/strong&gt; to skip the payment methods list step when only one non-instant payment method is available. Defaults to &lt;strong&gt;false&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;title&lt;\\\/code&gt;    &lt;br&gt; Only for iOS&lt;\\\/td&gt;\\n&lt;td&gt;Set a custom title for the pre-selected stored payment view. By default, the app&#039;s name is used.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Add optional configuration for Drop-in&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import { Configuration } from &#039;@adyen\\\\\\\/react-native&#039;;\\\\n\\\\nconst configuration: Configuration = {\\\\n    environment: &#039;test&#039;, \\\\\\\/\\\\\\\/ When you&#039;re ready to accept real payments, change the value to a suitable live environment.\\\\n    clientKey: &#039;YOUR_CLIENT_KEY&#039;,\\\\n    dropin: {\\\\n        skipListWhenSinglePaymentMethod: true,\\\\n        showPreselectedStoredPaymentMethod: false\\\\n    }\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;e97a14b6612ecc362524accca3ba82d8&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;3. Create a configuration object&lt;\\\/h3&gt;\\n&lt;p&gt;Create a configuration object with the following properties:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you&#039;re ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/react-native\\\/drop-in#test-and-go-live\\&quot;&gt;live environments&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;For iOS, this is the URL to your app, where the shopper should return, after a redirection. Maximum of 1024 characters. For more information on setting a custom URL scheme for your app, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/uikit\\\/inter-process_communication\\\/allowing_apps_and_websites_to_link_to_your_content\\\/defining_a_custom_url_scheme_for_your_app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;. &lt;br&gt; For Android, this value is automatically overridden by &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you want to show the amount on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you want to show the amount on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example: &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create a configuration object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const configuration = {\\\\n    \\\\\\\/\\\\\\\/ When you&#039;re ready to accept live payments, change the value to one of our live environments.\\\\n    environment: &#039;test&#039;,\\\\n    clientKey: &#039;YOUR_CLIENT_KEY&#039;,\\\\n    \\\\\\\/\\\\\\\/ For iOS, this is the URL to your app. For Android, this is automatically overridden by AdyenCheckout.\\\\n    returnUrl: &#039;your-app:\\\\\\\/\\\\\\\/&#039;,\\\\n    \\\\\\\/\\\\\\\/ Must be included to show the amount on the Pay button.\\\\n    countryCode: &#039;NL&#039;,\\\\n    amount: { currency: &#039;EUR&#039;, value: 1000 }\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;To add configuration for specific payment methods, add these in a payment method specific configuration object. For example, for Apple Pay:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Add configuration for Apple Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const configuration: Configuration = {\\\\n  environment: &#039;test&#039;, \\\\\\\/\\\\\\\/ When you&#039;re ready to accept real payments, change the value to a suitable live environment.\\\\n  clientKey: &#039;YOUR_CLIENT_KEY&#039;,\\\\n  returnUrl: &#039;your-app:\\\\\\\/\\\\\\\/&#039;,\\\\n  countryCode: &#039;NL&#039;,\\\\n  amount: {\\\\n      currency: &#039;EUR&#039;,\\\\n      value: 1000\\\\n  },\\\\n  applepay: {\\\\n    merchantID: &#039;APPLE_PAY_MERCHANT_ID&#039;,\\\\n    merchantName: &#039;APPLE_PAY_MERCHANT_NAME&#039;\\\\n  }\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;h4&gt;Optional configuration&lt;\\\/h4&gt;\\n&lt;p&gt;Optionally, you can configure the following properties for Drop-in.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showPreselectedStoredPaymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;When enabled, shows the preselected stored payment method view. Defaults to &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;skipListWhenSinglePaymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Set to &lt;strong&gt;true&lt;\\\/strong&gt; to skip showing the payment methods list when only one non-instant payment method is available. Defaults to &lt;strong&gt;false&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;title&lt;\\\/code&gt;    &lt;br&gt; Only for iOS&lt;\\\/td&gt;\\n&lt;td&gt;Set a custom title for the pre-selected stored payment view. By default, the app&#039;s name is used.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;showRemovePaymentMethodButton&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Allows the shopper to remove a stored payment method. Defaults to &lt;strong&gt;false&lt;\\\/strong&gt;. When enabled, you must also implement the &lt;code&gt;onDisableStoredPaymentMethod&lt;\\\/code&gt; callback.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onDisableStoredPaymentMethod(storedPaymentMethod, resolve, reject) =&amp;gt; {}&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Called when a shopper removes a stored payment method. To remove the selected payment method, make a &lt;strong&gt;DELETE&lt;\\\/strong&gt; &lt;code&gt;storedPaymentMethods&lt;\\\/code&gt; request using the &lt;code&gt;storedPaymentMethodId&lt;\\\/code&gt;. Then call either &lt;code&gt;resolve()&lt;\\\/code&gt; or &lt;code&gt;reject()&lt;\\\/code&gt;, depending on the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/delete\\\/storedPaymentMethods\\\/(storedPaymentMethodId)\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/storedPaymentMethods\\\/{storedPaymentMethodId}&lt;\\\/a&gt; response.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Add optional configuration for Drop-in&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const configuration: Configuration = {\\\\n    environment: &#039;test&#039;, \\\\\\\/\\\\\\\/ When you&#039;re ready to accept real payments, change the value to a suitable live environment.\\\\n    clientKey: &#039;{YOUR_CLIENT_KEY}&#039;,\\\\n    returnUrl: &#039;your-app:\\\\\\\/\\\\\\\/&#039;,\\\\n    countryCode: &#039;NL&#039;,\\\\n    amount: { currency: &#039;EUR&#039;, value: 1000 },\\\\n    dropin: {\\\\n        skipListWhenSinglePaymentMethod: true,\\\\n        showPreselectedStoredPaymentMethod: false\\\\n    }\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;aa5d2d8d40cfd61b3dbcf8939a633bbd&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, the Native Component calls &lt;code&gt;onSubmit&lt;\\\/code&gt;, and you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The complete &lt;code&gt;paymentMethod&lt;\\\/code&gt; object from your client app. It includes the payment method details and other required information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The object that includes information collected by the Component to track the user&#039;s payment journey, including information like the &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt;. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt; &lt;br&gt; For Android, this value is automatically overridden by &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;td&gt;For iOS, this is the URL to your app, where the shopper should return, after a redirection. Maximum of 1024 characters. For more information on setting a custom URL scheme for your app, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/uikit\\\/inter-process_communication\\\/allowing_apps_and_websites_to_link_to_your_content\\\/defining_a_custom_url_scheme_for_your_app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;.  &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;errors\\&quot;&gt;Errors&lt;\\\/h3&gt;\\n&lt;p&gt;If an error occurs, you get an error object from the &lt;code&gt;onError&lt;\\\/code&gt; callback with one of the following error codes:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Error code&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;th&gt;Action to take&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;canceledByShopper&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper canceled the payment.&lt;\\\/td&gt;\\n&lt;td&gt;Take the shopper back to the checkout page.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;notSupported&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method isn&#039;t supported by the shopper&#039;s device.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that the payment method isn&#039;t supported by their device.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noClientKey&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;clientKey&lt;\\\/code&gt; configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPayment&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;payment&lt;\\\/code&gt; information configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;invalidPaymentMethods&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t parse the &lt;code&gt;paymentMethods&lt;\\\/code&gt; list, or the list is empty.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPaymentMethod&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t find the selected payment method.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that their selected payment method is currently unavailable.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;}},&quot;components&quot;:{&quot;label&quot;:&quot;Components&quot;,&quot;description&quot;:&quot;Use our customizable UI components&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;React Native Components&lt;\\\/h2&gt;\\n&lt;p&gt;Render individual payment methods anywhere in your app.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=react%20native%20components\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Low development time to integrate each payment method component&lt;\\\/li&gt;\\n&lt;li&gt;UI styling customization for each payment method&lt;\\\/li&gt;\\n&lt;li&gt;Flexibility to add payment method components with configuration for each&lt;\\\/li&gt;\\n&lt;li&gt;3D Secure 2 support using the 3D Secure 2 Component&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;visual_images&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/react-native\\\/components\\\/visual\\\/react-components.svg&quot;,&quot;external_content&quot;:&quot;&lt;h3&gt;Adyen React Native on GitHub&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-react-native\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View the Adyen React Native repository&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/adyen-examples\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View our example integrations&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;external_icon&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/react-native\\\/github\\\/github-mark.png&quot;,&quot;versions&quot;:{&quot;version-2.9.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;57bf449ef7de59a8a0e79a8e24148129&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;90a9ef20ee2c89c1500865b73b5b1939&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;2f5c486a77761e370cad9b06f397d4c9&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.9.1&quot;}},&quot;version-2.9.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;57bf449ef7de59a8a0e79a8e24148129&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;90a9ef20ee2c89c1500865b73b5b1939&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;2f5c486a77761e370cad9b06f397d4c9&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;2.9.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70}},&quot;version-2.8.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;57bf449ef7de59a8a0e79a8e24148129&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;90a9ef20ee2c89c1500865b73b5b1939&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.8.1&quot;}},&quot;version-2.8.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;57bf449ef7de59a8a0e79a8e24148129&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;90a9ef20ee2c89c1500865b73b5b1939&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.8.0&quot;}},&quot;version-2.7.3&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;57bf449ef7de59a8a0e79a8e24148129&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;90a9ef20ee2c89c1500865b73b5b1939&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.7.3&quot;}},&quot;version-2.7.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;57bf449ef7de59a8a0e79a8e24148129&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;90a9ef20ee2c89c1500865b73b5b1939&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.7.2&quot;}},&quot;version-2.7.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;57bf449ef7de59a8a0e79a8e24148129&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;90a9ef20ee2c89c1500865b73b5b1939&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.7.1&quot;}},&quot;version-2.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;57bf449ef7de59a8a0e79a8e24148129&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;90a9ef20ee2c89c1500865b73b5b1939&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.7.0&quot;}},&quot;version-2.6.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;57bf449ef7de59a8a0e79a8e24148129&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;90a9ef20ee2c89c1500865b73b5b1939&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.6.0&quot;}},&quot;version-2.5.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;57bf449ef7de59a8a0e79a8e24148129&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;90a9ef20ee2c89c1500865b73b5b1939&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.5.0&quot;}},&quot;version-2.4.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;57bf449ef7de59a8a0e79a8e24148129&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;90a9ef20ee2c89c1500865b73b5b1939&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.4.1&quot;}},&quot;version-2.4.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;57bf449ef7de59a8a0e79a8e24148129&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;90a9ef20ee2c89c1500865b73b5b1939&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;2.4.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70}},&quot;version-2.3.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;7e03020ce62d06d7204b439214e3da8d&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;f6ebb1be6951840e1ceb79acf4d41dd3&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.3.0&quot;}},&quot;version-2.2.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;7e03020ce62d06d7204b439214e3da8d&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;f6ebb1be6951840e1ceb79acf4d41dd3&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.2.0&quot;}},&quot;version-2.1.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;7e03020ce62d06d7204b439214e3da8d&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;f6ebb1be6951840e1ceb79acf4d41dd3&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.1.1&quot;}},&quot;version-2.1.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;7e03020ce62d06d7204b439214e3da8d&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;f6ebb1be6951840e1ceb79acf4d41dd3&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.1.0&quot;}},&quot;version-2.0.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;7e03020ce62d06d7204b439214e3da8d&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;f6ebb1be6951840e1ceb79acf4d41dd3&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;2.0.1&quot;}},&quot;version-2.0.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;cbfbd65a295443786c9369f42c405cb1&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;7e03020ce62d06d7204b439214e3da8d&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;f6ebb1be6951840e1ceb79acf4d41dd3&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;2.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70}},&quot;version-1.2.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;e440a7b8f19e2244e35d405f82236e50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;61ffa6bf20802ba54782e106a0112aa7&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;f6ebb1be6951840e1ceb79acf4d41dd3&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;1.2.1&quot;}},&quot;version-1.2.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;e440a7b8f19e2244e35d405f82236e50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;61ffa6bf20802ba54782e106a0112aa7&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;f6ebb1be6951840e1ceb79acf4d41dd3&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;1.2.0&quot;}},&quot;version-1.1.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;e440a7b8f19e2244e35d405f82236e50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;61ffa6bf20802ba54782e106a0112aa7&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;f6ebb1be6951840e1ceb79acf4d41dd3&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70},&quot;versions&quot;:{&quot;version&quot;:&quot;1.1.0&quot;}},&quot;version-1.0.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;e2985df29c09cf3014a42b5cb69515b7&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;e440a7b8f19e2244e35d405f82236e50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;cf689760d7398fe923f0208c6da1ddd8&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;61ffa6bf20802ba54782e106a0112aa7&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;f6ebb1be6951840e1ceb79acf4d41dd3&quot;},&quot;initialize&quot;:{&quot;$ref&quot;:&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;be9dfe6a50a286aff5445cb60765f55b&quot;},&quot;perform_additional_front_end_actions&quot;:{&quot;$ref&quot;:&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;e8497800251164596b4a099e37060eb1&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;1.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:70}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;:&quot;&lt;p&gt;Components are our pre-built UI solution for accepting payments in your app. Each Component renders a payment method you can render anywhere in your app. Your server makes API requests to the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt;,  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt;, and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; endpoints.&lt;\\\/p&gt;\\n&quot;,&quot;e2985df29c09cf3014a42b5cb69515b7&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you begin to integrate, make sure you have followed the &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen guide&lt;\\\/a&gt; to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Get an overview of the steps needed to accept live payments.&lt;\\\/li&gt;\\n&lt;li&gt;Create your test account.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After you have created your test account:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt; to know the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;e440a7b8f19e2244e35d405f82236e50&quot;:&quot;&lt;h2&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Components integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps67688\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#add\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The shopper goes to the checkout page.&lt;\\\/li&gt;\\n&lt;li&gt;Your server uses the shopper&#039;s country and currency information from your client to get available payment methods.&lt;\\\/li&gt;\\n&lt;li&gt;The Component collects the shopper&#039;s payment details, handles additional actions, and shows the payment result to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;Your webhook server receives the notification containing the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/react-native\\\/1-0-0\\\/02.how-it-works\\\/components-flow.jpg\\&quot; \\\/&gt;&lt;\\\/p&gt;\\n&quot;,&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabCHPSg14040\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;14040&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;cf689760d7398fe923f0208c6da1ddd8&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.&lt;\\\/p&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;We use the optional parameters to tailor the list of available payment methods to your shopper.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The platform where the payment is taking place. For example, when you set this to &lt;strong&gt;iOS&lt;\\\/strong&gt;, Adyen returns only the payment methods available for iOS.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. Adyen returns only the payment methods available in this country. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, the &lt;code&gt;shopperlocale&lt;\\\/code&gt; is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code. The front end also uses this locale.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example, to get the available payment methods for a shopper in the &lt;strong&gt;Netherlands&lt;\\\/strong&gt;, for a payment of &lt;strong&gt;EUR&amp;nbsp;10&lt;\\\/strong&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;advanced-flow-post-payment-methods-request&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Android&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available &lt;code&gt;paymentMethods&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;\\\/paymentMethods response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;Cards\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;scheme\\\\\\&quot;\\\\n    ...\\\\n  },\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n  },\\\\n  ...\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Pass the response to your client app. Use this in the next step to show available payment methods to the shopper.&lt;\\\/p&gt;&quot;,&quot;61ffa6bf20802ba54782e106a0112aa7&quot;:&quot;&lt;h2&gt;Add Adyen Components to your app&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3 id=\\&quot;add\\&quot;&gt;1. Add Adyen React Native to your project&lt;\\\/h3&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-js\\&quot;&gt;$ yarn add @adyen\\\/react-native&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;h3&gt;2. Install&lt;\\\/h3&gt;\\n\\n&lt;div id=\\&quot;tabMtPbV20252\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;20252&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;iOS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;Run &amp;lt;code&amp;gt;pod install&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;In your &amp;lt;code&amp;gt;AppDelegate.m&amp;lt;\\\\\\\/code&amp;gt; file, add a return URL handler for handling redirects from other apps. For example:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;iOS return URL handler&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import &amp;amp;lt;adyen-react-native\\\\\\\\\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;\\\\\\\\n\\\\\\\\n{\\\\\\\\n...\\\\\\\\n- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary&amp;amp;lt;UIApplicationOpenURLOptionsKey,id&amp;amp;gt; *)options {\\\\\\\\n  return [ADYRedirectComponent applicationDidOpenURL:url];\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ios_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Android&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Add &amp;lt;code&amp;gt;AdyenCheckoutService&amp;lt;\\\\\\\/code&amp;gt; to your app&amp;#039;s manifest file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add AdyenCheckoutService to the manifest file.&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;service android:name=\\\\\\\\\\\\&amp;quot;com.adyenreactnativesdk.component.dropin.AdyenCheckoutService\\\\\\\\\\\\&amp;quot; android:exported=\\\\\\\\\\\\&amp;quot;false\\\\\\\\\\\\&amp;quot; \\\\\\\\\\\\\\\/&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Provide your checkout &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/guide\\\\\\\/components\\\\\\\/activities\\\\\\\/intro-activities\\\\&amp;quot;&amp;gt;activity&amp;lt;\\\\\\\/a&amp;gt; to &amp;lt;code&amp;gt;AdyenCheckout&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Provide checkout activity to AdyenCheckout&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;@Override\\\\\\\\nprotected void onCreate(Bundle savedInstanceState) {\\\\\\\\n    super.onCreate(savedInstanceState);\\\\\\\\n    AdyenCheckout.setLauncherActivity(this);\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;ol start=\\\\&amp;quot;3\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Add the following for the redirect component to your app&amp;#039;s &amp;lt;code&amp;gt;defaultConfig&amp;lt;\\\\\\\/code&amp;gt; in the &amp;lt;code&amp;gt;build.gradle&amp;lt;\\\\\\\/code&amp;gt; file. This &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/studio\\\\\\\/build\\\\\\\/manage-manifests#inject_build_variables_into_the_manifest\\\\&amp;quot;&amp;gt;provides &amp;lt;code&amp;gt;rootProject.ext.adyenReactNativeRedirectScheme&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/a&amp;gt; to your app&amp;#039;s manifest.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add to your app\\\\\\\\&amp;#039;s manifest&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;defaultConfig {\\\\\\\\n    ...\\\\\\\\n    manifestPlaceholders = [redirectScheme: rootProject.ext.adyenReactNativeRedirectScheme]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;To enable standalone redirect components, return the URL handler to your Checkout activity &amp;lt;code&amp;gt;onNewIntent&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Return URL handler to onNewIntent&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;@Override\\\\\\\\npublic void onNewIntent(Intent intent) {\\\\\\\\n    super.onNewIntent(intent);\\\\\\\\n    AdyenCheckout.handle(intent);\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;android_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;f6ebb1be6951840e1ceb79acf4d41dd3&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;3. Create a configuration object&lt;\\\/h3&gt;\\n&lt;p&gt;Create a configuration object with the following properties:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/react-native\\\/components#test-and-go-live\\&quot;&gt;live environments&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;For iOS, this is the URL to your app, where the shopper should return, after a redirection. Maximum of 1024 characters. For more information on setting a custom URL scheme for your app, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/uikit\\\/inter-process_communication\\\/allowing_apps_and_websites_to_link_to_your_content\\\/defining_a_custom_url_scheme_for_your_app\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;. &lt;br&gt; For Android, this value is automatically overridden by &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you want to show the amount on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you want to show the amount on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create a configuration object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const configuration = {\\\\n    \\\\\\\/\\\\\\\/ When you are ready to accept live payments, change the value to one of our live environments.\\\\n    environment: &#039;test&#039;,\\\\n    clientKey: &#039;YOUR_CLIENT_KEY&#039;,\\\\n    \\\\\\\/\\\\\\\/ For iOS, this is the URL to your app. For Android, this is automatically overridden by AdyenCheckout.\\\\n    returnUrl: &#039;your-app:\\\\\\\/\\\\\\\/&#039;,\\\\n    \\\\\\\/\\\\\\\/ Must be included to show the amount on the Pay button.\\\\n    countryCode: &#039;NL&#039;,\\\\n    amount: { currency: &#039;EUR&#039;, value: 1000 }\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;dd204e2096fa0e39354d2ba0475ca54b&quot;:&quot;&lt;h3&gt;4. Initialize Components&lt;\\\/h3&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Configure &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;, setting the following:&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;config&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your &lt;a href=\\&quot;#configure\\&quot;&gt;configuration object&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethods&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full response from the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; endpoint.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Callback that uses &lt;code&gt;data&lt;\\\/code&gt; to make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request when the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button and the payment details are valid.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Callback that uses &lt;code&gt;data&lt;\\\/code&gt; to make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request when a payment requires additional details, for example to authenticate with 3D Secure or to pay using a QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onError&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Callback that handles errors.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;In your &lt;code&gt;onSubmit&lt;\\\/code&gt;, &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;, and &lt;code&gt;onError&lt;\\\/code&gt; callbacks, you must call &lt;code&gt;component.hide(result)&lt;\\\/code&gt; to dismiss the payment UI when the API request is completed and the payment result is known.&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;2\\&quot;&gt;\\n&lt;li&gt;Set &lt;code&gt;AdyenCheckout&lt;\\\/code&gt; as the &lt;a href=\\&quot;https:\\\/\\\/reactjs.org\\\/docs\\\/context.html\\&quot;&gt;context&lt;\\\/a&gt; for your &lt;a href=\\&quot;https:\\\/\\\/reactnative.dev\\\/docs\\\/view\\&quot;&gt;&lt;code&gt;View&lt;\\\/code&gt;&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;For example:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Configure AdyenCheckout&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Import AdyenCheckout.\\\\nimport { AdyenCheckout } from &#039;@adyen\\\\\\\/react-native&#039;;\\\\nimport { useCallback } from &#039;react&#039;;\\\\n\\\\nconst submitHandler = useCallback(\\\\n    (data, component, extra) =&amp;gt; {\\\\n        \\\\\\\/\\\\\\\/ Make a \\\\\\\/payments request.\\\\n        \\\\\\\/\\\\\\\/ When this callback is executed, you must call `component.hide(true | false)` to dismiss the payment UI.\\\\n    },\\\\n    [...],\\\\n);\\\\n\\\\nconst errorHandler = useCallback(\\\\n    (error, component) =&amp;gt; {\\\\n        \\\\\\\/\\\\\\\/ Handle errors or termination by shopper.\\\\n        \\\\\\\/\\\\\\\/ When this callback is executed, you must call `component.hide(false)` to dismiss the payment UI.\\\\n    },\\\\n    [...],\\\\n);\\\\n\\\\nconst additionalDetailsHandler = useCallback(\\\\n    (data, component) =&amp;gt; {\\\\n        \\\\\\\/\\\\\\\/ Make a \\\\\\\/payments\\\\\\\/details request.\\\\n        \\\\\\\/\\\\\\\/ When this callback is executed, you must call `component.hide(true | false)` to dismiss the payment UI.\\\\n    },\\\\n    [...],\\\\n);\\\\n\\\\n&amp;lt;AdyenCheckout\\\\n    config={configuration}\\\\n    paymentMethods={paymentMethods}\\\\n    onSubmit={submitHandler}\\\\n    onError={errorHandler}\\\\n    onAdditionalDetails={additionalDetailsHandler}\\\\n&amp;gt;\\\\n    &amp;lt;YourCheckoutView\\\\\\\/&amp;gt;\\\\n&amp;lt;\\\\\\\/AdyenCheckout&amp;gt;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;Create a way, like a button, for &lt;code&gt;AdyenCheckout&lt;\\\/code&gt; to call the &lt;code&gt;start&lt;\\\/code&gt; function.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create a way to start the Component&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import { useAdyenCheckout } from &#039;@adyen\\\\\\\/react-native&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Set your View to use AdyenCheckout as the context.\\\\nconst YourCheckoutView = () =&amp;gt; {\\\\n    const { start } = useAdyenCheckout();\\\\n\\\\n    return (\\\\n    \\\\\\\/\\\\\\\/ Create a way, like a checkout button, that starts the Component.\\\\n        &amp;lt;Button\\\\n            title=\\\\&amp;quot;Checkout\\\\&amp;quot;\\\\n            \\\\\\\/\\\\\\\/ The paymentMethod is the paymentMethod.type from the \\\\\\\/paymentMethods response.\\\\n            onPress={() =&amp;gt; { start(&#039;paymentMethod&#039;); }} \\\\\\\/&amp;gt;\\\\n    );\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The context starts Adyen&#039;s &lt;a href=\\&quot;https:\\\/\\\/reactnative.dev\\\/docs\\\/intro-react-native-components#native-components\\&quot;&gt;Native Component&lt;\\\/a&gt; for the corresponding payment method.&lt;\\\/p&gt;\\n&quot;,&quot;be9dfe6a50a286aff5445cb60765f55b&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, the Native Component calls &lt;code&gt;onSubmit&lt;\\\/code&gt;, and you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method from the &lt;code&gt;payload&lt;\\\/code&gt; of the &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client app.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt; &lt;br&gt; For Android, this value is automatically overridden by &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;td&gt;For iOS, this is the URL to your app, where the shopper should return, after a redirection. Maximum of 1024 characters. For more information on setting a custom URL scheme for your app, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/uikit\\\/inter-process_communication\\\/allowing_apps_and_websites_to_link_to_your_content\\\/defining_a_custom_url_scheme_for_your_app\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;.  &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;errors\\&quot;&gt;Errors&lt;\\\/h3&gt;\\n&lt;p&gt;If an error occurs, you get an error object from the &lt;code&gt;onError&lt;\\\/code&gt; callback with one of the following error codes:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Error code&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;th&gt;Action to take&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;canceledByShopper&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper canceled the payment.&lt;\\\/td&gt;\\n&lt;td&gt;Take the shopper back to the checkout page.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;notSupported&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method isn&#039;t supported by the shopper&#039;s device.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that the payment method isn&#039;t supported by their device.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noClientKey&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;clientKey&lt;\\\/code&gt; configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPayment&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;payment&lt;\\\/code&gt; information configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;invalidPaymentMethods&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t parse the &lt;code&gt;paymentMethods&lt;\\\/code&gt; list, or the list is empty.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPaymentMethod&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t find the selected payment method.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that their selected payment method is currently unavailable.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;60344bee49f0dd10ef5909f2c8fbb3f7&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;To handle these additional front-end actions, the &lt;code&gt;AdyenCheckout&lt;\\\/code&gt; provides a &lt;code&gt;handle&lt;\\\/code&gt; function.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Call &lt;code&gt;handle&lt;\\\/code&gt; from one of Adyen&#039;s Native Components and pass the &lt;code&gt;action&lt;\\\/code&gt; to it. For example:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Handle the action&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;\\\\\\\/\\\\\\\/ Call the handle function from the Native Component corresponding to the payment method.\\\\nnativeComponent.handle(action)\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The Native Component performs the additional action on the client side.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;You handle the payment data, depending on the value of &lt;code&gt;action.type&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, the Component redirects your shopper to another website to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;When the shopper returns to your app, the Component calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;If the shopper fails to return to your app, you do not get the additional data to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must use a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows the QR code to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;When the shopper uses the QR code to complete the payment, the Component calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows a different UI in an overlay.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper uses the UI overlay to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows the voucher to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;When the shopper completes the additional action with the voucher (for example: saving it to their digital wallet or forwarding it to their email), the Component calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The Component shows the instructions for the additional action to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;The shopper does the additional action.&lt;\\\/li&gt;\\n&lt;li&gt;The Component calls the &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; event.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;e8497800251164596b4a099e37060eb1&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your app, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the full &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;didProvide&lt;\\\/code&gt; method to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request including the full &lt;code&gt;data&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to send additional payment details&#039;\\&quot; :id=\\&quot;&#039;details-request-component&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{hint:object passed from your client app}STATE_DATA{\\\\\\\/hint}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nString xApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nClient client = new Client(xApiKey,Environment.TEST);\\\\nCheckout checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nPaymentsDetailsRequest paymentsDetailsRequest = STATE_DATA;\\\\nPaymentsResponse paymentsDetailsResponse = checkout.paymentsDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\n$params = STATE_DATA;\\\\n$result = $service-&amp;gt;paymentsDetails($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed.\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from the client app, deserialized from JSON to a data structure.\\\\nvar paymentsDetailsRequest = STATE_DATA;\\\\nvar paymentsDetailsResponse = checkout.PaymentDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;[ADYEN_API_KEY]&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\ncheckout.paymentsDetails(STATE_DATA).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;[ADYEN_API_KEY]\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nreq := STATE_DATA;\\\\nres, httpRes, err := client.Checkout.PaymentsDetails(&amp;amp;req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresult = adyen.checkout.payments_details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresponse = adyen.checkout.payments.details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client\\\\n   puts response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode to your client\\\\n   puts response.body[:resultCode]\\\\nend&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response from your server to your client app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After the Component finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;&lt;code&gt;resultCode&lt;\\\/code&gt;&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;30f6d1bf21f88544a9320bfb5b8aa8d6&quot;:&quot;&lt;h2 id=\\&quot;test-and-go-live\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. Review the process to start accepting payments on &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?=1#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.\\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;Load Components from one of our live environments and set the &lt;code&gt;environment&lt;\\\/code&gt; to match your live endpoints:&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;environment&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-eu&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-au&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;US&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;live-us&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;38802c6124fb87c6f1f6c66bcd343fac&quot;:&quot;&lt;h2 id=\\&quot;next-steps\\&quot;&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps1174\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Modify payments&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods#add-payment-methods-to-your-account\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Tokenization&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Save shopper payment details for later payments.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;cbfbd65a295443786c9369f42c405cb1&quot;:&quot;&lt;h2&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Components integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps6680\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#add\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The shopper goes to the checkout page.&lt;\\\/li&gt;\\n&lt;li&gt;Your server uses the shopper&#039;s country and currency information from your client to get available payment methods.&lt;\\\/li&gt;\\n&lt;li&gt;The Component collects the shopper&#039;s payment details, handles additional actions, and shows the payment result to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;Your webhook server receives the notification containing the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/react-native\\\/1-0-0\\\/02.how-it-works\\\/components-flow.jpg\\&quot; \\\/&gt;&lt;\\\/p&gt;\\n&quot;,&quot;7e03020ce62d06d7204b439214e3da8d&quot;:&quot;&lt;h2&gt;Add Adyen Components to your app&lt;\\\/h2&gt;\\n&lt;h3 id=\\&quot;add\\&quot;&gt;1. Add Adyen React Native to your project&lt;\\\/h3&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-js\\&quot;&gt;$ yarn add @adyen\\\/react-native&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;h3&gt;2. Install&lt;\\\/h3&gt;\\n\\n&lt;div id=\\&quot;tabDiGY044766\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;44766&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;iOS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;Run &amp;lt;code&amp;gt;pod install&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;In your &amp;lt;code&amp;gt;AppDelegate.m&amp;lt;\\\\\\\/code&amp;gt; file, add a return URL handler for handling redirects from other apps. For example:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Return URL handler&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import &amp;amp;lt;adyen-react-native\\\\\\\\\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;\\\\\\\\n\\\\\\\\n{\\\\\\\\n...\\\\\\\\n- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary&amp;amp;lt;UIApplicationOpenURLOptionsKey,id&amp;amp;gt; *)options {\\\\\\\\n  return [ADYRedirectComponent applicationDidOpenURL:url];\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;If you use &amp;lt;code&amp;gt;RCTLinkingManager&amp;lt;\\\\\\\/code&amp;gt; or other ways of deep linking, use &amp;lt;code&amp;gt;ADYRedirectComponent.applicationDidOpenURL&amp;lt;\\\\\\\/code&amp;gt; first:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Return URL handler with deep linking support&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import &amp;amp;lt;adyen-react-native\\\\\\\\\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;\\\\\\\\n\\\\\\\\n{\\\\\\\\n...\\\\\\\\n- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary&amp;amp;lt;UIApplicationOpenURLOptionsKey,id&amp;amp;gt; *)options {\\\\\\\\n  return [ADYRedirectComponent applicationDidOpenURL:url] || [super application:application openURL:url options:options] || [RCTLinkingManager application:application openURL:url options:options];\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;If you want to &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/xcode\\\\\\\/supporting-universal-links-in-your-app\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;support universal links in your app&amp;lt;\\\\\\\/a&amp;gt;, add the following return URL handler instead:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Return handler with universal link support&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import &amp;amp;lt;adyen-react-native\\\\\\\\\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;\\\\\\\\n\\\\\\\\n{\\\\\\\\n...\\\\\\\\n- (BOOL)application:(UIApplication *)application continueUserActivity:(nonnull NSUserActivity *)userActivity restorationHandler:(nonnull void (^)(NSArray&amp;amp;lt;id&amp;amp;lt;UIUserActivityRestoring&amp;amp;gt;&amp;amp;gt; * _Nullable))restorationHandler {\\\\\\\\n  if ([[userActivity activityType] isEqualToString:NSUserActivityTypeBrowsingWeb]) {\\\\\\\\n   NSURL *url = [userActivity webpageURL];\\\\\\\\n    if (![url isEqual:[NSNull null]] &amp;amp;amp;&amp;amp;amp; [ADYRedirectComponent applicationDidOpenURL:url]) {\\\\\\\\n      return YES;\\\\\\\\n    }\\\\\\\\n  }\\\\\\\\n  BOOL result = [RCTLinkingManager application:application continueUserActivity:userActivity restorationHandler:restorationHandler];\\\\\\\\n  return [super application:application continueUserActivity:userActivity restorationHandler:restorationHandler] || result;\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice note\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If your &amp;lt;code&amp;gt;Podfile&amp;lt;\\\\\\\/code&amp;gt; has &amp;lt;code&amp;gt;use_frameworks!&amp;lt;\\\\\\\/code&amp;gt;, import the redirect component using underscores (&amp;lt;strong&amp;gt;_&amp;lt;\\\\\\\/strong&amp;gt;) instead of hyphens(&amp;lt;strong&amp;gt;-&amp;lt;\\\\\\\/strong&amp;gt;):&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-js\\\\&amp;quot;&amp;gt;#import &amp;amp;lt;adyen_react_native\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ios_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Android&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Provide your checkout &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/guide\\\\\\\/components\\\\\\\/activities\\\\\\\/intro-activities\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;activity&amp;lt;\\\\\\\/a&amp;gt; to &amp;lt;code&amp;gt;AdyenCheckout&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Provide checkout activity to AdyenCheckout&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;@Override\\\\\\\\nprotected void onCreate(Bundle savedInstanceState) {\\\\\\\\n    super.onCreate(savedInstanceState);\\\\\\\\n    AdyenCheckout.setLauncherActivity(this);\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;ol start=\\\\&amp;quot;2\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;To enable standalone redirect components, return the URL handler to your Checkout activity &amp;lt;code&amp;gt;onNewIntent&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Return URL handler to onNewIntent&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;@Override\\\\\\\\npublic void onNewIntent(Intent intent) {\\\\\\\\n    super.onNewIntent(intent);\\\\\\\\n    AdyenCheckout.handle(intent);\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;android_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Expo&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;notices green\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;p&amp;gt;The library is not compatible with ExpoGo and is only available with the Expo managed workflow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Add the Adyen React Native plugin to your &amp;lt;code&amp;gt;app.json&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add Adyen React Native&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n  \\\\\\\\\\\\&amp;quot;expo\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n    \\\\\\\\\\\\&amp;quot;plugins\\\\\\\\\\\\&amp;quot;: [\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/react-native\\\\\\\\\\\\&amp;quot;]\\\\\\\\n  }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;expo_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;57bf449ef7de59a8a0e79a8e24148129&quot;:&quot;&lt;h2&gt;Add Adyen Components to your app&lt;\\\/h2&gt;\\n&lt;h3 id=\\&quot;add\\&quot;&gt;1. Add Adyen React Native to your project&lt;\\\/h3&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-js\\&quot;&gt;$ yarn add @adyen\\\/react-native&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;h3&gt;2. Install&lt;\\\/h3&gt;\\n\\n&lt;div id=\\&quot;tab3GjOX93666\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;93666&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;iOS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;Run &amp;lt;code&amp;gt;pod install&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;In your &amp;lt;code&amp;gt;AppDelegate.m&amp;lt;\\\\\\\/code&amp;gt; file, add a return URL handler for handling redirects from other apps. For example:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Return URL handler&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import &amp;amp;lt;adyen-react-native\\\\\\\\\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;\\\\\\\\n\\\\\\\\n{\\\\\\\\n...\\\\\\\\n- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary&amp;amp;lt;UIApplicationOpenURLOptionsKey,id&amp;amp;gt; *)options {\\\\\\\\n  return [ADYRedirectComponent applicationDidOpenURL:url];\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;If you use &amp;lt;code&amp;gt;RCTLinkingManager&amp;lt;\\\\\\\/code&amp;gt; or other ways of deep linking, use &amp;lt;code&amp;gt;ADYRedirectComponent.applicationDidOpenURL&amp;lt;\\\\\\\/code&amp;gt; first:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Return URL handler with deep linking support&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import &amp;amp;lt;adyen-react-native\\\\\\\\\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;\\\\\\\\n\\\\\\\\n{\\\\\\\\n...\\\\\\\\n- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary&amp;amp;lt;UIApplicationOpenURLOptionsKey,id&amp;amp;gt; *)options {\\\\\\\\n  return [ADYRedirectComponent applicationDidOpenURL:url] || [super application:application openURL:url options:options] || [RCTLinkingManager application:application openURL:url options:options];\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;If you want to &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/xcode\\\\\\\/supporting-universal-links-in-your-app\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;support universal links in your app&amp;lt;\\\\\\\/a&amp;gt;, add the following return URL handler instead:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Return handler with universal link support&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import &amp;amp;lt;adyen-react-native\\\\\\\\\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;\\\\\\\\n\\\\\\\\n{\\\\\\\\n...\\\\\\\\n- (BOOL)application:(UIApplication *)application continueUserActivity:(nonnull NSUserActivity *)userActivity restorationHandler:(nonnull void (^)(NSArray&amp;amp;lt;id&amp;amp;lt;UIUserActivityRestoring&amp;amp;gt;&amp;amp;gt; * _Nullable))restorationHandler {\\\\\\\\n  if ([[userActivity activityType] isEqualToString:NSUserActivityTypeBrowsingWeb]) {\\\\\\\\n   NSURL *url = [userActivity webpageURL];\\\\\\\\n    if (![url isEqual:[NSNull null]] &amp;amp;amp;&amp;amp;amp; [ADYRedirectComponent applicationDidOpenURL:url]) {\\\\\\\\n      return YES;\\\\\\\\n    }\\\\\\\\n  }\\\\\\\\n  BOOL result = [RCTLinkingManager application:application continueUserActivity:userActivity restorationHandler:restorationHandler];\\\\\\\\n  return [super application:application continueUserActivity:userActivity restorationHandler:restorationHandler] || result;\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice note\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If your &amp;lt;code&amp;gt;Podfile&amp;lt;\\\\\\\/code&amp;gt; has &amp;lt;code&amp;gt;use_frameworks!&amp;lt;\\\\\\\/code&amp;gt;, import the redirect component using underscores (&amp;lt;strong&amp;gt;_&amp;lt;\\\\\\\/strong&amp;gt;) instead of hyphens(&amp;lt;strong&amp;gt;-&amp;lt;\\\\\\\/strong&amp;gt;):&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;pre&amp;gt;&amp;lt;code class=\\\\&amp;quot;language-js\\\\&amp;quot;&amp;gt;#import &amp;amp;lt;adyen_react_native\\\\\\\/ADYRedirectComponent.h&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/pre&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ios_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Android&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Provide your checkout &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/guide\\\\\\\/components\\\\\\\/activities\\\\\\\/intro-activities\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;activity&amp;lt;\\\\\\\/a&amp;gt; to &amp;lt;code&amp;gt;AdyenCheckout&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Provide checkout activity to AdyenCheckout&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;@Override\\\\\\\\nprotected void onCreate(Bundle savedInstanceState) {\\\\\\\\n    super.onCreate(savedInstanceState);\\\\\\\\n    AdyenCheckout.setLauncherActivity(this);\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;ol start=\\\\&amp;quot;2\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;To enable standalone redirect components, return the URL handler to your Checkout activity &amp;lt;code&amp;gt;onNewIntent&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Return URL handler to onNewIntent&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;@Override\\\\\\\\npublic void onNewIntent(Intent intent) {\\\\\\\\n    super.onNewIntent(intent);\\\\\\\\n    AdyenCheckout.handle(intent);\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;android_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Expo&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;notices green\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;p&amp;gt;The library is not compatible with ExpoGo and is only available with the Expo managed workflow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Add the Adyen React Native plugin to your &amp;lt;code&amp;gt;app.json&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add Adyen React Native&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n  \\\\\\\\\\\\&amp;quot;expo\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n    \\\\\\\\\\\\&amp;quot;plugins\\\\\\\\\\\\&amp;quot;: [\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/react-native\\\\\\\\\\\\&amp;quot;]\\\\\\\\n  }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;expo_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;90a9ef20ee2c89c1500865b73b5b1939&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;3. Create a configuration object&lt;\\\/h3&gt;\\n&lt;p&gt;Create a configuration object with the following properties:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you&#039;re ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/react-native\\\/components#test-and-go-live\\&quot;&gt;live environments&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;For iOS, this is the URL to your app, where the shopper should return, after a redirection. Maximum of 1024 characters. For more information on setting a custom URL scheme for your app, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/uikit\\\/inter-process_communication\\\/allowing_apps_and_websites_to_link_to_your_content\\\/defining_a_custom_url_scheme_for_your_app\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;. &lt;br&gt; For Android, this value is automatically overridden by &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you want to show the amount on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you want to show the amount on the &lt;strong&gt;Pay&lt;\\\/strong&gt; button.&lt;\\\/td&gt;\\n&lt;td&gt;The\\u00a0&lt;code&gt;currency&lt;\\\/code&gt;\\u00a0and\\u00a0&lt;code&gt;value&lt;\\\/code&gt;\\u00a0of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example: &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create a configuration object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const configuration = {\\\\n    \\\\\\\/\\\\\\\/ When you&#039;re ready to accept live payments, change the value to one of our live environments.\\\\n    environment: &#039;test&#039;,\\\\n    clientKey: &#039;YOUR_CLIENT_KEY&#039;,\\\\n    \\\\\\\/\\\\\\\/ For iOS, this is the URL to your app. For Android, this is automatically overridden by AdyenCheckout.\\\\n    returnUrl: &#039;your-app:\\\\\\\/\\\\\\\/&#039;,\\\\n    \\\\\\\/\\\\\\\/ Must be included to show the amount on the Pay button.\\\\n    countryCode: &#039;NL&#039;,\\\\n    amount: { currency: &#039;EUR&#039;, value: 1000 }\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;To add configuration for specific payment methods, add these in a payment method specific configuration object. For example, for Apple Pay:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Add configuration for Apple Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const configuration: Configuration = {\\\\n  environment: &#039;test&#039;, \\\\\\\/\\\\\\\/ When you&#039;re ready to accept real payments, change the value to a suitable live environment.\\\\n  clientKey: &#039;YOUR_CLIENT_KEY&#039;,\\\\n  returnUrl: &#039;your-app:\\\\\\\/\\\\\\\/&#039;,\\\\n  countryCode: &#039;NL&#039;,\\\\n  amount: {\\\\n      currency: &#039;EUR&#039;,\\\\n      value: 1000\\\\n  },\\\\n  applepay: {\\\\n    merchantID: &#039;APPLE_PAY_MERCHANT_ID&#039;,\\\\n    merchantName: &#039;APPLE_PAY_MERCHANT_NAME&#039;\\\\n  }\\\\n};&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;2f5c486a77761e370cad9b06f397d4c9&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, the Native Component calls &lt;code&gt;onSubmit&lt;\\\/code&gt;, and you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from &lt;code&gt;onSubmit&lt;\\\/code&gt; to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The complete &lt;code&gt;paymentMethod&lt;\\\/code&gt; object from your client app. It includes the payment method details and other required information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The object that includes information collected by the Component to track the user&#039;s payment journey, including information like the &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt;. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt; &lt;br&gt; For Android, this value is automatically overridden by &lt;code&gt;AdyenCheckout&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;td&gt;For iOS, this is the URL to your app, where the shopper should return, after a redirection. Maximum of 1024 characters. For more information on setting a custom URL scheme for your app, read the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/uikit\\\/inter-process_communication\\\/allowing_apps_and_websites_to_link_to_your_content\\\/defining_a_custom_url_scheme_for_your_app\\&quot;&gt;Apple Developer documentation&lt;\\\/a&gt;.  &lt;br&gt; If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;errors\\&quot;&gt;Errors&lt;\\\/h3&gt;\\n&lt;p&gt;If an error occurs, you get an error object from the &lt;code&gt;onError&lt;\\\/code&gt; callback with one of the following error codes:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Error code&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;th&gt;Action to take&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;canceledByShopper&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper canceled the payment.&lt;\\\/td&gt;\\n&lt;td&gt;Take the shopper back to the checkout page.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;notSupported&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method isn&#039;t supported by the shopper&#039;s device.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that the payment method isn&#039;t supported by their device.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noClientKey&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;clientKey&lt;\\\/code&gt; configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPayment&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;payment&lt;\\\/code&gt; information configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;invalidPaymentMethods&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t parse the &lt;code&gt;paymentMethods&lt;\\\/code&gt; list, or the list is empty.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPaymentMethod&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t find the selected payment method.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that their selected payment method is currently unavailable.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;}},&quot;api&quot;:{&quot;label&quot;:&quot;API only&quot;,&quot;description&quot;:&quot;Use Adyen APIs and your own UI&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;API only&lt;\\\/h2&gt;\\n&lt;p&gt;Create your own client-side UI and use our API endpoints to get the list of available payment methods and submit a payment.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=api%20only\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Full control of styling on your checkout page&lt;\\\/li&gt;\\n&lt;li&gt;Your own UI elements&lt;\\\/li&gt;\\n&lt;li&gt;Creating your own client-side logic&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Handling secure card data and authentication&lt;\\\/h3&gt;\\n&lt;p&gt;You must ensure that your integration complies with regulatory requirements such as &lt;a href=\\&quot;\\\/online-payments\\\/pci-dss-compliance\\&quot;&gt;PCI DSS&lt;\\\/a&gt; and &lt;a href=\\&quot;\\\/online-payments\\\/psd2-sca-compliance-and-implementation-guide\\&quot;&gt;PSD2 SCA&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;We recommend that you use our pre-built client-side solutions to securely do the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;Collect, validate, and encrypt card details&lt;\\\/strong&gt;: Implement our solution to &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/custom-card-integration\\&quot;&gt;handle encrypted card data&lt;\\\/a&gt; with your custom UI and comply with &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4\\&quot;&gt;PCI DSS regulations&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Authenticate transactions with 3D Secure 2&lt;\\\/strong&gt;: Handle the &lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt; using our solution and comply with &lt;a href=\\&quot;\\\/online-payments\\\/psd2-sca-compliance-and-implementation-guide\\\/sca-options\\&quot;&gt;PSD2 SCA regulations for online payments&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;visual_images&quot;:null,&quot;external_content&quot;:null,&quot;external_icon&quot;:null,&quot;versions&quot;:{&quot;version-72&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;410eeadcca25e02eba9a1963a2ad4f85&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;10fb435cb8874a8c9fa20f7f29557300&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;8f73244559657311010bcfd0a3711a82&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;72&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-71&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9483afa33c795cd642aeb59ede820f74&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;4b9a2ed18e7bdb83d25039a458f19402&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;786c1dafef7066cbc356a23eb0c207ef&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;71&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-70&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;3fd3567e3240c9718954d0bb9dbdf93b&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c399abeb57d778f5dc7324dd83c852d7&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;8e0d2ffeaae92a7b41df5d1dedde2003&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;70&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-69&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;26026d22d357f17dc56ac607f9327ee4&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;1ca177e064d353332213ad12990bd6de&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;236ee43ba37e5d284f4c2d3885b07fe8&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;69&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-68&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;f34189bbc3b5dee3400ad8dcd9898fd3&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;d9f7d413aca5041f0be896678642114c&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;c32bceaef0b7af884b98577f5864204f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;ab157ff912c4eaea22a34a75a8369fc4&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;68&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-67&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;13a76548de49cd8543ed750ae8927404&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;70d50ba1778ba89eb4c06dbb01ac468b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;c32bceaef0b7af884b98577f5864204f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;48123ef61e1fe482c7dd9663dc32b5ca&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;67&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-66&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;57c45621abeeb8bc856b5f2e172d8fb5&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;546900c41bc8b18a7fcf2584bf3fdc82&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;552e9ff28b875e2de02035247be99a2b&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;af3dd5c396d3d3217ddd545edf40d8cf&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;66&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-2.9.1&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;2.9.1&quot;}},&quot;version-2.8.1&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;2.8.1&quot;}},&quot;version-2.8.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;2.8.0&quot;}},&quot;version-2.7.3&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;2.7.3&quot;}},&quot;version-2.7.2&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;2.7.2&quot;}},&quot;version-2.7.1&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;2.7.1&quot;}},&quot;version-2.7.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;2.7.0&quot;}},&quot;version-2.6.1&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;2.6.1&quot;}},&quot;version-2.6.0&quot;:{&quot;versions&quot;:{&quot;version&quot;:&quot;2.6.0&quot;},&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;1d43d186aba254c470e458de75718609&quot;:&quot;&lt;p&gt;With an API-only integration, you create your own UI, implement your own client-side logic, and use our API to send and receive payment data. You have full control over the look and feel of your checkout page.&lt;\\\/p&gt;\\n&lt;p&gt;To reduce your development time and resources, you can use one of our pre-built UI options (Drop-in\\\/Components) instead.&lt;\\\/p&gt;&quot;,&quot;b70a81e509a54da6fb991872525e37da&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you build your integration, take into account the following requirements and preparations.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th style=\\&quot;text-align: left;\\&quot;&gt;Requirement&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: left;\\&quot;&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials\\\/roles\\\/\\&quot;&gt;API credential roles&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have the following role: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Checkout webservice role&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/account\\\/user-roles\\&quot;&gt;Customer Area roles&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have one of the following roles: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Merchant admin role&lt;\\\/strong&gt;&lt;\\\/li&gt; &lt;li&gt;&lt;strong&gt;Manage API credentials&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Webhooks&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Subscribe to the following webhook: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Standard webhooks&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;Limitations&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;ul&gt;&lt;li&gt;Your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;PCI compliance assesment&lt;\\\/a&gt; determines your &lt;a href=\\&quot;#collect-card-details\\&quot;&gt;integration options for card payments&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;For 3D Secure 2 authentication for shoppers using Chrome, your &lt;a href=\\&quot;https:\\\/\\\/developers.google.com\\\/search\\\/blog\\\/2020\\\/01\\\/get-ready-for-new-samesitenone-secure\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;cookies must use the &lt;code&gt;SameSite&lt;\\\/code&gt; attribute&lt;\\\/a&gt;. &lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;Setup steps&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Before you begin: &lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen#test-account\\&quot;&gt;Create your Adyen test account&lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;If you want to process payments using raw card data, contact your Adyen Account Manager to confirm that you are eligible.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;572979e4f54f785d3cc1e14627fadd95&quot;:&quot;&lt;h2 id=\\&quot;how-it-works\\&quot;&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For an API-only integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client&lt;\\\/strong&gt;: shows your custom UI where the shopper makes the payment. Passes data to and receives data from your payment server to handle the payment flow and additional actions on your client.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h2&gt;Integration steps&lt;\\\/h2&gt;\\n&lt;p&gt;The parts of your integration work together to handle the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, make an API request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Show the &lt;a href=\\&quot;#collect-shopper-details\\&quot;&gt;payment form to collect the shopper&#039;s payment details&lt;\\\/a&gt; in your UI.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment request&lt;\\\/a&gt; with the data that you have collected from the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;For some payment methods, you use your client to &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt; that your shopper must do. For example, you redirect your shopper to another website or show a QR code that the shopper uses to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps91523\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#collect-shopper-details\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabLWRJr90750\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;90750&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;57c45621abeeb8bc856b5f2e172d8fb5&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s device: &lt;strong&gt;iOS&lt;\\\/strong&gt; or &lt;strong&gt;Android&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-66&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v66\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;:&quot;&lt;h2 id=\\&quot;build-your-payment-form\\&quot;&gt;Build your payment form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Create your payment form where the shopper enters their information. We recommend that you collect commonly-used &lt;a href=\\&quot;#information-in-the-payment-form\\&quot;&gt;shopper information in your payment form&lt;\\\/a&gt; to process a transactions, depending on your type of business.&lt;br \\\/&gt;\\n&lt;span id=\\&quot;collect-shopper-details\\&quot;&gt;&lt;\\\/span&gt;&lt;br \\\/&gt;\\nSome payment methods require you to collect, or optionally accept, additional information that you include in the payment request. For the additional information you must collect in your payment form for an individual payment method, go to our &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;guide for the individual payment method&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;We provide &lt;a href=\\&quot;#downloading-logos\\&quot;&gt;payment method and issuer logos that you can download&lt;\\\/a&gt; and use in your payment form.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;collect-card-details\\&quot;&gt;Credit and debit card details&lt;\\\/h3&gt;\\n&lt;p&gt;Because governing bodies and organizations regulate the handling of credit and debit card information strictly, you must make sure that you are compliant when collecting card details. When a shopper selects to pay with a card, use the integration option that corresponds to your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;level of PCI compliance&lt;\\\/a&gt;:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;(Recommended) Adyen&#039;s &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/custom-card-integration\\&quot;&gt;Custom Card Component&lt;\\\/a&gt; with encryption: our pre-built UI with logic to securely encrypt and handle payment card data.&lt;\\\/li&gt;\\n&lt;li&gt;Your own UI and logic to collect and handle &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/raw-card-data\\&quot;&gt;raw card data&lt;\\\/a&gt;: before you build an integration that collects raw credit and debit card data, you must &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;assess your PCI compliance according to the most extensive self-assessment form&lt;\\\/a&gt; and contact your Adyen Account Manager to confirm that you are eligible.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Information in the payment form&lt;\\\/h3&gt;\\n&lt;p&gt;After collecting information in your payment form, you must add it to corresponding API parameters that you include in the payment request.&lt;\\\/p&gt;\\n&lt;p&gt;For example, for commonly-used information:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Field in the payment form&lt;\\\/th&gt;\\n&lt;th&gt;API request parameter&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;First name&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperName.firstName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Last name&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperName.lastName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Email address&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperEmail&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Billing address (multiple fields)&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;billingAddress&lt;\\\/code&gt; (object)&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Shipping address (multiple fields)&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;deliveryAddress&lt;\\\/code&gt; (object)&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Phone number&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;telephoneNumber&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;3847c027124001dbd878122635d13126&quot;:&quot;&lt;div class=\\&quot;accordion-shortcode adl-accordion adl-accordion--max-height-transition\\&quot; data-expand=\\&quot;true\\&quot; data-ignore=\\&quot;anchorjs-link\\&quot;&gt;\\n    \\n    &lt;div class=\\&quot;adl-accordion__item\\&quot; style=\\&quot;\\&quot;&gt;\\n        &lt;div tabindex=\\&quot;0\\&quot; role=\\&quot;item\\&quot; aria-expanded=\\&quot;false\\&quot; class=\\&quot;adl-accordion__header\\&quot;&gt;\\n            &lt;i class=\\&quot;adl-accordion__toggle adl-icon-chevron-down\\&quot;&gt;&lt;\\\/i&gt;\\n            &lt;div class=\\&quot;adl-accordion__title-wrapper\\&quot; data-accordion=\\&quot;#downloading-logos\\&quot;&gt;\\n                                    &lt;h3 class=\\&quot;adl-accordion__title\\&quot;&gt;Downloading logos&lt;\\\/h3&gt;\\n                            &lt;\\\/div&gt;\\n        &lt;\\\/div&gt;\\n        &lt;div role=\\&quot;region\\&quot; class=\\&quot;adl-accordion__content\\&quot;&gt;\\n            \\n&lt;p&gt;If you are building your own UI, we provide payment method and issuing bank logos that you can use on your checkout page. The images are available in PNG format with different sizes and screen resolutions and in SVG format.&lt;\\\/p&gt;\\n&lt;p&gt;If you cannot find a payment method or issuer logo, contact our &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/ca\\\/ca\\\/contactUs\\\/support.shtml?form=other\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Support Team&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h4&gt;Payment method logos&lt;\\\/h4&gt;\\n&lt;p&gt;Download the images from the links below, specifying:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;img-size&lt;\\\/code&gt;: Specify the size for PNG format. Use the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;small&lt;\\\/strong&gt;: Image size 40x26 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;medium&lt;\\\/strong&gt;: Image size 77x50 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;large&lt;\\\/strong&gt;: Image size 154 x 100 pixels&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;suffix&lt;\\\/code&gt;: Specify the image density for PNG format. If not specified, the images will have the same size as the &lt;code&gt;img-size&lt;\\\/code&gt;.  Append any of the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;@2x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;@3x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-ldpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-hdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;pm-type&lt;\\\/code&gt;: The &lt;code&gt;paymentMethods.type&lt;\\\/code&gt; returned in the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response. For example, &lt;strong&gt;googlepay&lt;\\\/strong&gt; or &lt;strong&gt;primeiropay_boleto&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;For cards, the values you should use are specified under &lt;code&gt;brands&lt;\\\/code&gt; with &lt;code&gt;type&lt;\\\/code&gt;: &lt;strong&gt;scheme&lt;\\\/strong&gt;. For example, &lt;code&gt;mc&lt;\\\/code&gt;, &lt;code&gt;visa&lt;\\\/code&gt;, and &lt;code&gt;amex&lt;\\\/code&gt;. To get a generic card logo, set &lt;code&gt;pm-type&lt;\\\/code&gt; to &lt;strong&gt;card&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Download link for SVG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for SVG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[pm-type].svg\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Download link for PNG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for PNG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[img-size]\\\\\\\/[pm-type][suffix].png\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Examples:&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/mc.svg\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/mc.svg&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/large\\\/googlepay@2x.png\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/large\\\/googlepay@2x.png&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h4&gt;Issuing bank logos&lt;\\\/h4&gt;\\n&lt;p&gt;Some payment methods such as iDEAL present a list of issuing banks to the shopper.&lt;\\\/p&gt;\\n&lt;p&gt;Download the issuing bank logos from the links below, specifying:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;img-size&lt;\\\/code&gt;: Specify the size for PNG format. Use the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;small&lt;\\\/strong&gt;: Image size 40x26 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;medium&lt;\\\/strong&gt;: Image size 77x50 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;large&lt;\\\/strong&gt;: Image size 154 x 100 pixels&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;suffix&lt;\\\/code&gt;: Specify the image density for PNG format. If not specified, the images will have the same size as the &lt;code&gt;img-size&lt;\\\/code&gt;.  Append any of the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;@2x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;@3x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-ldpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-hdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;pm-type&lt;\\\/code&gt;: The &lt;code&gt;paymentMethods.type&lt;\\\/code&gt; in objects with &lt;code&gt;details.key&lt;\\\/code&gt; &lt;strong&gt;issuer&lt;\\\/strong&gt; returned in the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response. For example, &lt;strong&gt;ideal&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;issuerid&lt;\\\/code&gt;: The &lt;code&gt;details.items.id&lt;\\\/code&gt; referring to the issuing bank. For example, &lt;strong&gt;1121&lt;\\\/strong&gt; and &lt;strong&gt;1151&lt;\\\/strong&gt; for iDEAL.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Download link for SVG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for SVG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[pm-type]\\\\\\\/[issuerid].svg\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Download link for PNG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for PNG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[img-size]\\\\\\\/[pm-type]\\\\\\\/[issuerid][suffix].png\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Examples:&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/ideal\\\/1121.svg\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/ideal\\\/1121.svg&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/small\\\/ideal\\\/1151-xxhdpi.png\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/small\\\/ideal\\\/1151-xxhdpi.png&lt;\\\/a&gt;&lt;\\\/p&gt;\\n\\n        &lt;\\\/div&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;546900c41bc8b18a7fcf2584bf3fdc82&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; iOS: Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. iOS example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Android: Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Android example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt;  &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-66&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v66\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Store the &lt;code&gt;action.paymentData&lt;\\\/code&gt; object on your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#additional-action\\&quot;&gt;Handle the additional action&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQABAgBJp\\\\\\\/z\\\\\\\/T3+6P ...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;552e9ff28b875e2de02035247be99a2b&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabTfcjH35842\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;35842&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;TermUrl&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL for your page, to redirect the shopper to, after they finish authentication on the 3D Secure 2 page. This should be the same as the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; that you include when you &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;make a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-6067370540&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;TermUrl=https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;af3dd5c396d3d3217ddd545edf40d8cf&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the action you handled:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If you handled a redirect:\\n&lt;ul&gt;\\n&lt;li&gt;For a payment method redirect, pass the URL-decoded &lt;code&gt;redirectResult&lt;\\\/code&gt; and the complete &lt;code&gt;paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;li&gt;For a 3D Secure 2 redirect, pass the URL-decoded &lt;code&gt;MD&lt;\\\/code&gt;, &lt;code&gt;PaRes&lt;\\\/code&gt;, the complete &lt;code&gt;paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;li&gt;If you handled a non-redirect additional action: pass the complete &lt;code&gt;action.paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;What you do depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response includes an additional action.&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt; using the data from the latest  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response instead of the data from the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response without an action for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response without an action for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After the shopper finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;\\n  &lt;code&gt;resultCode&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;9339cccb051868e8f60981049948cdeb&quot;:&quot;&lt;h2 id=\\&quot;error-handling\\&quot;&gt;Error handling&lt;\\\/h2&gt;\\n&lt;p&gt;In case you encounter errors in your integration, refer to the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/error-codes\\&quot;&gt;API error codes&lt;\\\/a&gt;: If you receive a non-HTTP 200 response, use the &lt;code&gt;errorCode&lt;\\\/code&gt; to troubleshoot and modify your request.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/refusal-reasons\\&quot;&gt;Payment refusals&lt;\\\/a&gt;: If you receive an HTTP 200 response with an &lt;strong&gt;Error&lt;\\\/strong&gt; or &lt;strong&gt;Refused&lt;\\\/strong&gt; &lt;code&gt;resultCode&lt;\\\/code&gt;, check the refusal reason and, if possible, modify your request.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;51976743859edfbe0863f8222febf901&quot;:&quot;&lt;h2 id=\\&quot;test-and-go-live\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0&lt;a href=\\&quot;\\\/development-resources\\\/testing\\&quot;&gt;test your integration&lt;\\\/a&gt;. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting:\\n&lt;ul&gt;\\n&lt;li&gt;the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;, if you are using the Custom Card Component.&lt;\\\/li&gt;\\n&lt;li&gt;the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-D_Merchant.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-D&lt;\\\/a&gt;, if you are submitting raw card data.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.\\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;b21f96573eb957635d49f8525a08e0f2&quot;:&quot;&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps87947\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Set up notifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Receive confirmation when a payment is authorised or fails.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Payment modifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;13a76548de49cd8543ed750ae8927404&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/67\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s device: &lt;strong&gt;iOS&lt;\\\/strong&gt; or &lt;strong&gt;Android&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;70d50ba1778ba89eb4c06dbb01ac468b&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; iOS: Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. iOS example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Android: Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Android example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt;  &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;c32bceaef0b7af884b98577f5864204f&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabbqIK769166\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;69166&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;TermUrl&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL for your page, to redirect the shopper to, after they finish authentication on the 3D Secure 2 page. This should be the same as the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; that you include when you &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;make a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-6067370540&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;TermUrl=https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;48123ef61e1fe482c7dd9663dc32b5ca&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;f34189bbc3b5dee3400ad8dcd9898fd3&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/68\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s device: &lt;strong&gt;iOS&lt;\\\/strong&gt; or &lt;strong&gt;Android&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;d9f7d413aca5041f0be896678642114c&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; iOS: Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. iOS example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Android: Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Android example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt;  &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;ab157ff912c4eaea22a34a75a8369fc4&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;26026d22d357f17dc56ac607f9327ee4&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/69\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s device: &lt;strong&gt;iOS&lt;\\\/strong&gt; or &lt;strong&gt;Android&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;1ca177e064d353332213ad12990bd6de&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; iOS: Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. iOS example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Android: Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Android example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt;  &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;bcee6e858c15ab7c4a7b22e88767e0b5&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabWHalN41080\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;41080&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-1374613331&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\\\\\\\\\/checkoutshopper\\\\\\\\\\\\\\\/threeDS\\\\\\\\\\\\\\\/checkoutRedirect\\\\\\\\\\\\\\\/... \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;236ee43ba37e5d284f4c2d3885b07fe8&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;3fd3567e3240c9718954d0bb9dbdf93b&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/70\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s device: &lt;strong&gt;iOS&lt;\\\/strong&gt; or &lt;strong&gt;Android&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest()\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .countryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  .channel(PaymentMethodsRequest.ChannelEnum.IOS)\\\\n  .shopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.3.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentMethodsRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentMethodsRequest = new PaymentMethodsRequest();\\\\n$paymentMethodsRequest\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setCountryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  -&amp;gt;setChannel(\\\\&amp;quot;iOS\\\\&amp;quot;)\\\\n  -&amp;gt;setShopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .NET API Library v32.2.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest\\\\n{\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode = \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  Channel = PaymentMethodsRequest.ChannelEnum.IOS,\\\\n  ShopperLocale = \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.1.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentMethodsRequest := checkout.PaymentMethodsRequest{\\\\n  Amount: &amp;amp;amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode: common.PtrString(\\\\&amp;quot;NL\\\\&amp;quot;),\\\\n  Channel: common.PtrString(\\\\&amp;quot;iOS\\\\&amp;quot;),\\\\n  ShopperLocale: common.PtrString(\\\\&amp;quot;nl-NL\\\\&amp;quot;),\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v11.0.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;iOS&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.IOs,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;c399abeb57d778f5dc7324dd83c852d7&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; iOS: Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. iOS example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Android: Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Android example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt;  &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-70&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v70\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8e0d2ffeaae92a7b41df5d1dedde2003&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-70&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v70\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;9483afa33c795cd642aeb59ede820f74&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/71\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s device: &lt;strong&gt;iOS&lt;\\\/strong&gt; or &lt;strong&gt;Android&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest()\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .countryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  .channel(PaymentMethodsRequest.ChannelEnum.IOS)\\\\n  .shopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.3.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentMethodsRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentMethodsRequest = new PaymentMethodsRequest();\\\\n$paymentMethodsRequest\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setCountryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  -&amp;gt;setChannel(\\\\&amp;quot;iOS\\\\&amp;quot;)\\\\n  -&amp;gt;setShopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .NET API Library v32.2.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest\\\\n{\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode = \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  Channel = PaymentMethodsRequest.ChannelEnum.IOS,\\\\n  ShopperLocale = \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.1.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentMethodsRequest := checkout.PaymentMethodsRequest{\\\\n  Amount: &amp;amp;amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode: common.PtrString(\\\\&amp;quot;NL\\\\&amp;quot;),\\\\n  Channel: common.PtrString(\\\\&amp;quot;iOS\\\\&amp;quot;),\\\\n  ShopperLocale: common.PtrString(\\\\&amp;quot;nl-NL\\\\&amp;quot;),\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v11.0.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;iOS&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.IOs,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Cards\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;4b9a2ed18e7bdb83d25039a458f19402&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/71\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; iOS: Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. iOS example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Android: Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Android example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt;  &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/71\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;786c1dafef7066cbc356a23eb0c207ef&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentDetailsResponse response = service.paymentsDetails(paymentDetailsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentsDetails($paymentDetailsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentsDetails(paymentDetailsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentDetailsRequest = {\\\\n  details: {\\\\n    redirectResult: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsDetailsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentDetailsRequest(paymentDetailsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentsDetails(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :details =&amp;gt; {\\\\n    :redirectResult =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cyI6IlkifQ==&#039;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;410eeadcca25e02eba9a1963a2ad4f85&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/72\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s device: &lt;strong&gt;iOS&lt;\\\/strong&gt; or &lt;strong&gt;Android&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-ios-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;iOS\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Cards\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;10fb435cb8874a8c9fa20f7f29557300&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; iOS: Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. iOS example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; Android: Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. &lt;\\\/li&gt;&lt;\\\/ul&gt; Android example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt;  &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-ios-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;com.mydomain.adyencheckout:\\\\\\\/\\\\\\\/\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8f73244559657311010bcfd0a3711a82&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.0\\\\nimport com.adyen.Client;\\\\nimport com.adyen.enums.Environment;\\\\nimport com.adyen.model.checkout.*;\\\\nimport com.adyen.model.RequestOptions;\\\\nimport com.adyen.service.checkout.*;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentDetailsResponse response = service.paymentsDetails(paymentDetailsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentsDetails($paymentDetailsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentsDetails(paymentDetailsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsDetailsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentDetailsRequest(paymentDetailsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentsDetails(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :details =&amp;gt; {\\\\n    :redirectResult =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cyI6IlkifQ==&#039;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;}}}},&quot;flutter&quot;:{&quot;label&quot;:&quot;Flutter&quot;,&quot;integrations&quot;:{&quot;drop-in&quot;:{&quot;label&quot;:&quot;Drop-in&quot;,&quot;description&quot;:&quot;Use our pre-built UI for accepting payments&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;Flutter Drop-in&lt;\\\/h2&gt;\\n&lt;p&gt;Render a list of available payment methods anywhere in your app.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=flutter%20drop-in\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Low development time to integrate payment methods&lt;\\\/li&gt;\\n&lt;li&gt;UI styling customization for the list of payment methods&lt;\\\/li&gt;\\n&lt;li&gt;Adding payment methods to the list requires no extra development time&lt;\\\/li&gt;\\n&lt;li&gt;3D Secure 2 support built in&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;visual_images&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/flutter\\\/dropin\\\/visual\\\/flutter-dropin.svg&quot;,&quot;external_content&quot;:&quot;&lt;h3&gt;Adyen Flutter on GitHub&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View the Adyen Flutter repository&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/adyen-examples\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;View our example integrations&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;external_icon&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/flutter\\\/github\\\/github-mark.png&quot;,&quot;versions&quot;:{&quot;version-1.8.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;59b2090338518e626fb3376eb27fac50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9e303d0396d69a9daf46daf127a0acea&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;2ff751c8f9711012bffebbd081cb2003&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;0664ddf96111ce63cd3b70deb9a2acce&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;622a654348ac47c155387497adfd247a&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;e26e918221351dca15af246c2e1a6544&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;c5dbb761c9e860cbdea693daabffd109&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.8.1&quot;}},&quot;version-1.8.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;59b2090338518e626fb3376eb27fac50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9e303d0396d69a9daf46daf127a0acea&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;2ff751c8f9711012bffebbd081cb2003&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;0664ddf96111ce63cd3b70deb9a2acce&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;622a654348ac47c155387497adfd247a&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;e26e918221351dca15af246c2e1a6544&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;c5dbb761c9e860cbdea693daabffd109&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;1.8.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-1.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;59b2090338518e626fb3376eb27fac50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9e303d0396d69a9daf46daf127a0acea&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;2ff751c8f9711012bffebbd081cb2003&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;0664ddf96111ce63cd3b70deb9a2acce&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;622a654348ac47c155387497adfd247a&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;aece6734a818d29549385af9becd5acb&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;c5dbb761c9e860cbdea693daabffd109&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.7.0&quot;}},&quot;version-1.6.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;59b2090338518e626fb3376eb27fac50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9e303d0396d69a9daf46daf127a0acea&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;2ff751c8f9711012bffebbd081cb2003&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;0664ddf96111ce63cd3b70deb9a2acce&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;622a654348ac47c155387497adfd247a&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;aece6734a818d29549385af9becd5acb&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;c5dbb761c9e860cbdea693daabffd109&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.6.0&quot;}},&quot;version-1.5.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;59b2090338518e626fb3376eb27fac50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9e303d0396d69a9daf46daf127a0acea&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;2ff751c8f9711012bffebbd081cb2003&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;0664ddf96111ce63cd3b70deb9a2acce&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;622a654348ac47c155387497adfd247a&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;aece6734a818d29549385af9becd5acb&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;c5dbb761c9e860cbdea693daabffd109&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.5.1&quot;}},&quot;version-1.5.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;59b2090338518e626fb3376eb27fac50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9e303d0396d69a9daf46daf127a0acea&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;2ff751c8f9711012bffebbd081cb2003&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;0664ddf96111ce63cd3b70deb9a2acce&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;622a654348ac47c155387497adfd247a&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;aece6734a818d29549385af9becd5acb&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;c5dbb761c9e860cbdea693daabffd109&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.5.0&quot;}},&quot;version-1.4.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;59b2090338518e626fb3376eb27fac50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9e303d0396d69a9daf46daf127a0acea&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;2ff751c8f9711012bffebbd081cb2003&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;0664ddf96111ce63cd3b70deb9a2acce&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;622a654348ac47c155387497adfd247a&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;aece6734a818d29549385af9becd5acb&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;c5dbb761c9e860cbdea693daabffd109&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;1.4.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-1.3.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;59b2090338518e626fb3376eb27fac50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9e303d0396d69a9daf46daf127a0acea&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;2ff751c8f9711012bffebbd081cb2003&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;0664ddf96111ce63cd3b70deb9a2acce&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;f3f7ad81b04f928cdd0605563a84cb97&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;aece6734a818d29549385af9becd5acb&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;c5dbb761c9e860cbdea693daabffd109&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.3.0&quot;}},&quot;version-1.2.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;59b2090338518e626fb3376eb27fac50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9e303d0396d69a9daf46daf127a0acea&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;2ff751c8f9711012bffebbd081cb2003&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;0664ddf96111ce63cd3b70deb9a2acce&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;f3f7ad81b04f928cdd0605563a84cb97&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;aece6734a818d29549385af9becd5acb&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;c5dbb761c9e860cbdea693daabffd109&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.2.0&quot;}},&quot;version-1.1.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;59b2090338518e626fb3376eb27fac50&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9e303d0396d69a9daf46daf127a0acea&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;2ff751c8f9711012bffebbd081cb2003&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;0664ddf96111ce63cd3b70deb9a2acce&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;f3f7ad81b04f928cdd0605563a84cb97&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;aece6734a818d29549385af9becd5acb&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;c5dbb761c9e860cbdea693daabffd109&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;1.1.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-1.0.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;e93b03aeb911d39fad3fe2fd8998c25f&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9e303d0396d69a9daf46daf127a0acea&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;bd360e71e4875c2e7e79fc89d50f0496&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;474fc956f97241865a483736f201677b&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;f3f7ad81b04f928cdd0605563a84cb97&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;aece6734a818d29549385af9becd5acb&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;c5dbb761c9e860cbdea693daabffd109&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.0.2&quot;}},&quot;version-1.0.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;e93b03aeb911d39fad3fe2fd8998c25f&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9e303d0396d69a9daf46daf127a0acea&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;bd360e71e4875c2e7e79fc89d50f0496&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;474fc956f97241865a483736f201677b&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;f3f7ad81b04f928cdd0605563a84cb97&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;aece6734a818d29549385af9becd5acb&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;c5dbb761c9e860cbdea693daabffd109&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.0.1&quot;}},&quot;version-1.0.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;69c226f2ad44f41e364103e82efde537&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;e93b03aeb911d39fad3fe2fd8998c25f&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;9e303d0396d69a9daf46daf127a0acea&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;bd360e71e4875c2e7e79fc89d50f0496&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;474fc956f97241865a483736f201677b&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;f3f7ad81b04f928cdd0605563a84cb97&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;aece6734a818d29549385af9becd5acb&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;c5dbb761c9e860cbdea693daabffd109&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;8042ebe5d4e577ca8316d439b83df001&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;1.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;69c226f2ad44f41e364103e82efde537&quot;:&quot;&lt;p&gt;Drop-in is our pre-built UI solution for accepting payments in your app. Drop-in shows all payment methods as a list, in the same block. Your server makes API requests to the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt;,  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt;, and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; endpoints.&lt;\\\/p&gt;\\n&quot;,&quot;579f645dfed2d27f7054d4f7369cd7ec&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you begin to integrate, make sure you have followed the &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen guide&lt;\\\/a&gt; to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Get an overview of the steps needed to accept live payments.&lt;\\\/li&gt;\\n&lt;li&gt;Create your test account.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After you have created your test account:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt; to know the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Required versions:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/support.apple.com\\\/en-us\\\/118387\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;iOS 12&lt;\\\/a&gt; or later.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/www.android.com\\\/versions\\\/lollipop-5-0\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Android 5.0&lt;\\\/a&gt; or later.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/kotlinlang.org\\\/docs\\\/whatsnew18.html\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Kotlin 1.8&lt;\\\/a&gt; or later.&lt;\\\/li&gt;\\n&lt;li&gt;Gradle v8 or later.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;e93b03aeb911d39fad3fe2fd8998c25f&quot;:&quot;&lt;h2&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Drop-in integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The shopper goes to the checkout screen.&lt;\\\/li&gt;\\n&lt;li&gt;Your server uses the shopper&#039;s country and currency information from your client to get available payment methods.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in shows the available payment methods,  collects the shopper&#039;s payment details, handles the additional action, and shows the payment result to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;Your webhook server receives the notification containing the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/flutter\\\/1-0-0\\\/02.how-it-works-adv\\\/drop-in-flow.jpg\\&quot; \\\/&gt;&lt;\\\/p&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps5308\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#prepare-your-front-end\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;25f1120b701d26ac68b25f8ff4dfc1c9&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabTEOfJ19664\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;19664&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;9e303d0396d69a9daf46daf127a0acea&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.&lt;\\\/p&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;We use the optional parameters to tailor the list of available payment methods to your shopper.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The platform where the payment is taking place. For example, when you set this to &lt;strong&gt;iOS&lt;\\\/strong&gt;, Adyen returns only the payment methods available for iOS.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. Adyen returns only the payment methods available in this country. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, the &lt;code&gt;shopperlocale&lt;\\\/code&gt; is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code. Your client app also uses this locale.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example, to get the available payment methods for a shopper in the &lt;strong&gt;Netherlands&lt;\\\/strong&gt;, for a payment of &lt;strong&gt;EUR&amp;nbsp;10&lt;\\\/strong&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;advanced-flow-post-payment-methods-request&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Android&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available &lt;code&gt;paymentMethods&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;\\\/paymentMethods response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;Cards\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;scheme\\\\\\&quot;\\\\n    ...\\\\n  },\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n  },\\\\n  ...\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Pass the response to your client app. Use this in the next step to show available payment methods to the shopper.&lt;\\\/p&gt;&quot;,&quot;bd360e71e4875c2e7e79fc89d50f0496&quot;:&quot;&lt;h2 id=\\&quot;prepare-your-front-end\\&quot;&gt;Add Drop-in to your app&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;1. Add platform-specific configurations&lt;\\\/h3&gt;\\n\\n&lt;div id=\\&quot;tabqIThc30645\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;30645&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;iOS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Add the return URL handler to your &amp;lt;code&amp;gt;AppDelegate.swift&amp;lt;\\\\\\\/code&amp;gt; file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add return URL handler&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;swift\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;override func application(_: UIApplication, open url: URL, options _: [UIApplication.OpenURLOptionsKey: Any] = [:]) -&amp;amp;gt; Bool {\\\\\\\\n    RedirectComponent.applicationDidOpen(from: url)\\\\\\\\nreturn true\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;In your app, add a &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/xcode\\\\\\\/defining-a-custom-url-scheme-for-your-app\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;custom URL scheme&amp;lt;\\\\\\\/a&amp;gt; that matches the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; you use when &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;making a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;For voucher payment methods, add photo library usage descriptions to the &amp;lt;code&amp;gt;Info.plist&amp;lt;\\\\\\\/code&amp;gt; file.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;For Apple Pay, do the following&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Complete the steps to &amp;lt;a href=\\\\&amp;quot;\\\\\\\/payment-methods\\\\\\\/apple-pay\\\\\\\/apple-pay-certificate\\\\\\\/ios\\\\&amp;quot;&amp;gt;enable Apple Pay&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;In your Runner target, add Apple Pay as a capability.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;In your Runner target, enter your merchant ID.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ios_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Android&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Set your activity to inherit from &amp;lt;code&amp;gt;FlutterFragmentActivity&amp;lt;\\\\\\\/code&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Inherit from FlutterFragmentActivity&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import io.flutter.embedding.android.FlutterFragmentActivity\\\\\\\\n\\\\\\\\nclass MainActivity: FlutterFragmentActivity() {\\\\\\\\n   \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ ...\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;android_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;474fc956f97241865a483736f201677b&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;2. Create a configuration object&lt;\\\/h3&gt;\\n&lt;p&gt;Create a configuration object with the following properties:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/advanced-flow?platform=Flutter&amp;amp;integration=Drop-in#test-and-go-live\\&quot;&gt;live environments&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. This is used to filter the list of available payment methods to your shopper. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, this is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; and &lt;code&gt;value&lt;\\\/code&gt; of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;. This is used to filter the list of available payment methods to your shopper.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example: &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create a Drop-in configuration object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;final DropInConfiguration dropInConfiguration = DropInConfiguration(\\\\n  \\\\\\\/\\\\\\\/ Change the environment to live to accept live payments.\\\\n  environment: Environment.test,\\\\n  clientKey: CLIENT_KEY,\\\\n  countryCode: COUNTRY_CODE,\\\\n  shopperLocale: SHOPPER_LOCALE, \\\\\\\/\\\\\\\/ Optional.\\\\n  amount: AMOUNT, \\\\\\\/\\\\\\\/ Optional.\\\\n  \\\\\\\/\\\\\\\/ Configuration for specific payment methods. For example, Apple Pay.\\\\n  applePayConfiguration: applePayConfiguration,\\\\n);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;To add configuration for specific payment methods, create an additional configuration object. For example, for Apple Pay:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create a configuration object for Apple Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;final ApplePayConfiguration applePayConfiguration = ApplePayConfiguration(\\\\n  merchantId: APPLE_PAY_MERCHANT_ID,\\\\n  merchantName: APPLE_PAY_MERCHANT_NAME,\\\\n);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;h3&gt;Optional configuration&lt;\\\/h3&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;preselectedPaymentMethodTitle&lt;\\\/code&gt;  &lt;br&gt; Only for iOS.&lt;\\\/td&gt;\\n&lt;td&gt;When you have a preselected payment method, sets the title of the Drop-in overlay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&quot;,&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;:&quot;&lt;h3 id=\\&quot;launch-and-show\\&quot;&gt;3. Add required callbacks&lt;\\\/h3&gt;\\n&lt;p&gt;In an instance of &lt;code&gt;AdvancedCheckout&lt;\\\/code&gt;, add the following callbacks:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Callback&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;From your server, make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request.&lt;br&gt; The callback returns: &lt;br&gt; - &lt;code&gt;data&lt;\\\/code&gt;: payment data that you must pass to your server. &lt;br&gt; - &lt;code&gt;extra&lt;\\\/code&gt;: additional information, like the shopper&#039;s shipping address, for some payment methods. This can be &lt;strong&gt;null&lt;\\\/strong&gt; if no additional information is provided.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;From your server, make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request, passing the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;onSubmit&lt;\\\/code&gt; callback.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Add required callbacks&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;final AdvancedCheckout advancedCheckout = AdvancedCheckout(\\\\n  onSubmit: YOUR_ON_SUBMIT_CALL,\\\\n  onAdditionalDetails: YOUR_ON_ADDITIONAL_DETAILS_CALL,\\\\n);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;f3f7ad81b04f928cdd0605563a84cb97&quot;:&quot;&lt;h3 id=\\&quot;show\\&quot;&gt;4. Show Drop-in in your app&lt;\\\/h3&gt;\\n&lt;p&gt;Call &lt;code&gt;startDropin&lt;\\\/code&gt; to show the Drop-in, passing the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;dropInConfiguration&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The configuration object you created.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; response.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;checkout&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;advancedCheckout&lt;\\\/code&gt; that you created.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Show Drop-in&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;final PaymentResult paymentResult =  await AdyenCheckout.advanced.startDropIn(\\\\n  dropInConfiguration: dropInConfiguration,\\\\n  paymentMethods: paymentMethodsResponse,\\\\n  checkout: advancedCheckout,\\\\n);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Drop-in handles the payment flow.&lt;\\\/p&gt;&quot;,&quot;aece6734a818d29549385af9becd5acb&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n &lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/p&gt;\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, Drop-in calls &lt;code&gt;onSubmit&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request specifying:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method from the &lt;code&gt;payload&lt;\\\/code&gt; of the &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client app.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; &lt;strong&gt;iOS&lt;\\\/strong&gt;: Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. You also need to: &lt;ol&gt;&lt;li&gt;Add the return URL handler to your &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/example\\\/ios\\\/Runner\\\/AppDelegate.swift#L18\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;AppDelegate&lt;\\\/a&gt; in your native iOS layer. &lt;\\\/li&gt;&lt;li&gt;Configure the custom URL scheme in your &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/example\\\/ios\\\/Runner\\\/Info.plist\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Info.plist file&lt;\\\/a&gt;. &lt;\\\/li&gt;&lt;\\\/ol&gt; &lt;br&gt; iOS example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; &lt;strong&gt;Android&lt;\\\/strong&gt;: Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;\\\/ul&gt; Use the &lt;code&gt;AdyenCheckout.instance.getReturnUrl()&lt;\\\/code&gt; method to get the value, or hardcode the string. &lt;br&gt;&lt;br&gt; Android example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example&lt;\\\/code&gt;  &lt;br&gt;&lt;br&gt; &lt;strong&gt;Format&lt;\\\/strong&gt;: Maximum 1024 characters. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;checkoutAttemptId&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt; generated by Drop-in to track the user payment journey. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example of a payment request for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Map the response to one of the following &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/lib\\\/src\\\/common\\\/model\\\/payment_event.dart\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;PaymentEvent&lt;\\\/code&gt;\\n&lt;\\\/a&gt; objects:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Finished&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment is finished.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Action&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An additional action is required. Drop-in automatically handles the additional action.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Error&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An &lt;a href=\\&quot;#errors\\&quot;&gt;error&lt;\\\/a&gt; has occured.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the object to your client. The &lt;code&gt;onSubmit&lt;\\\/code&gt; callback expects it.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;errors\\&quot;&gt;Errors&lt;\\\/h3&gt;\\n&lt;p&gt;If an error occurs, you get one of the following error codes:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Error code&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;th&gt;Action to take&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;canceledByShopper&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper canceled the payment.&lt;\\\/td&gt;\\n&lt;td&gt;Take the shopper back to the checkout page.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;notSupported&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method isn&#039;t supported by the shopper&#039;s device.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that the payment method isn&#039;t supported by their device.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noClientKey&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;clientKey&lt;\\\/code&gt; configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPayment&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;payment&lt;\\\/code&gt; information configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;invalidPaymentMethods&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t parse the &lt;code&gt;paymentMethods&lt;\\\/code&gt; list, or the list is empty.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPaymentMethod&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t find the selected payment method.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that their selected payment method is currently unavailable.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;cb01b92f170f10f09cc7ec74cfe50d83&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If the shopper performed additional actions to complete the payment, Drop-in calls &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request from your server:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send additional payment details&#039;\\&quot; :id=\\&quot;&#039;details-request-component&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{hint:object passed from your client app}STATE_DATA{\\\\\\\/hint}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nString xApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nClient client = new Client(xApiKey,Environment.TEST);\\\\nCheckout checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nPaymentsDetailsRequest paymentsDetailsRequest = STATE_DATA;\\\\nPaymentsResponse paymentsDetailsResponse = checkout.paymentsDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\n$params = STATE_DATA;\\\\n$result = $service-&amp;gt;paymentsDetails($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed.\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from the client app, deserialized from JSON to a data structure.\\\\nvar paymentsDetailsRequest = STATE_DATA;\\\\nvar paymentsDetailsResponse = checkout.PaymentDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;[ADYEN_API_KEY]&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\ncheckout.paymentsDetails(STATE_DATA).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;[ADYEN_API_KEY]\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nreq := STATE_DATA;\\\\nres, httpRes, err := client.Checkout.PaymentsDetails(&amp;amp;req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresult = adyen.checkout.payments_details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresponse = adyen.checkout.payments.details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client\\\\n   puts response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode to your client\\\\n   puts response.body[:resultCode]\\\\nend&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Example responses:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tab0iNzt1731\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;1731&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Successful payment&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Successful payment response&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n  \\\\\\\\\\\\&amp;quot;pspReference\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;NC6HT9CRT65ZGN82\\\\\\\\\\\\&amp;quot;,\\\\\\\\n  \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Authorised\\\\\\\\\\\\&amp;quot;\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;successful_payment_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Refused payment&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Refused payment response&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n  \\\\\\\\\\\\&amp;quot;pspReference\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;KHQC5N7G84BLNK43\\\\\\\\\\\\&amp;quot;,\\\\\\\\n  \\\\\\\\\\\\&amp;quot;refusalReason\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Not enough balance\\\\\\\\\\\\&amp;quot;,\\\\\\\\n  \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Refused\\\\\\\\\\\\&amp;quot;\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;refused_payment_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;ol&gt;\\n&lt;li&gt;Map the response to a &lt;code&gt;PaymentEvent&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the object from your server to your client app. The &lt;code&gt;onAdditionalDetail&lt;\\\/code&gt; callback expects it.\\n&lt;ul&gt;\\n&lt;li&gt;If another additional action is required, Drop-in handles it.&lt;\\\/li&gt;\\n&lt;li&gt;If no additional action is required, Drop-in completes the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;c5dbb761c9e860cbdea693daabffd109&quot;:&quot;&lt;h2 id=\\&quot;handle-the-result\\&quot;&gt;Handle the result&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When Drop-in completes the payment flow, you get one of the following objects:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Object&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;PaymentAdvancedFinished&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment was successfully submitted. Contains a &lt;code&gt;resultCode&lt;\\\/code&gt; with the status of the payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;PaymentCancelledByUser&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment was canceled by the user.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;PaymentError&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment encountered an error.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;Handle the object and &lt;a href=\\&quot;#inform-the-shopper\\&quot;&gt;inform the shopper&lt;\\\/a&gt;.&lt;\\\/p&gt;&quot;,&quot;620a0494b6389f0d6849c9cd5fc9fb07&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After Drop-in finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;\\n  &lt;code&gt;resultCode&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;12dfcf0cd91580fe25ee9b49df149afa&quot;:&quot;&lt;h2 id=\\&quot;test-and-go-live\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0&lt;a href=\\&quot;\\\/development-resources\\\/testing\\&quot;&gt;test your integration&lt;\\\/a&gt;. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. Review the process to start accepting payments on &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?=1#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.\\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Load Drop-in from one of our live environments and set the &lt;code&gt;environment&lt;\\\/code&gt; to match your live endpoints:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;Value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe (EU) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;europe&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;United States (US) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;unitedStates&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia (AU) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;australia&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Asia Pacific &amp;amp; Southeast (APSE) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;apse&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;India (IN) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;india&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8042ebe5d4e577ca8316d439b83df001&quot;:&quot;&lt;h2 id=\\&quot;next-steps\\&quot;&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps39187\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Modify payments&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods#add-payment-methods-to-your-account\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Tokenization&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Save shopper payment details for later payments.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;59b2090338518e626fb3376eb27fac50&quot;:&quot;&lt;h2&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Drop-in integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The shopper goes to the checkout screen.&lt;\\\/li&gt;\\n&lt;li&gt;Your server uses the shopper&#039;s country and currency information from your client to get available payment methods.&lt;\\\/li&gt;\\n&lt;li&gt;Drop-in shows the available payment methods,  collects the shopper&#039;s payment details, handles the additional action, and shows the payment result to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;Your webhook server receives the notification containing the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/flutter\\\/1-0-0\\\/02.how-it-works-adv\\\/drop-in-flow.jpg\\&quot; \\\/&gt;&lt;\\\/p&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps38375\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#prepare-your-front-end\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;2ff751c8f9711012bffebbd081cb2003&quot;:&quot;&lt;h2 id=\\&quot;prepare-your-front-end\\&quot;&gt;Add Drop-in to your app&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;1. Add platform-specific configurations&lt;\\\/h3&gt;\\n\\n&lt;div id=\\&quot;tabsofKB93753\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;93753&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;iOS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Add the return URL handler to your &amp;lt;code&amp;gt;AppDelegate.swift&amp;lt;\\\\\\\/code&amp;gt; file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add return URL handler&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;swift\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;override func application(_: UIApplication, open url: URL, options _: [UIApplication.OpenURLOptionsKey: Any] = [:]) -&amp;amp;gt; Bool {\\\\\\\\n    RedirectComponent.applicationDidOpen(from: url)\\\\\\\\nreturn true\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;In your app, add a &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/xcode\\\\\\\/defining-a-custom-url-scheme-for-your-app\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;custom URL scheme&amp;lt;\\\\\\\/a&amp;gt; that matches the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; you use when &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;making a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;For voucher payment methods, add photo library usage descriptions to the &amp;lt;code&amp;gt;Info.plist&amp;lt;\\\\\\\/code&amp;gt; file.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;For Apple Pay, do the following&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Complete the steps to &amp;lt;a href=\\\\&amp;quot;\\\\\\\/payment-methods\\\\\\\/apple-pay\\\\\\\/apple-pay-certificate\\\\\\\/ios\\\\&amp;quot;&amp;gt;enable Apple Pay&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;In your Runner target, add Apple Pay as a capability.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;In your Runner target, enter your merchant ID.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ios_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Android&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Set your activity to inherit from &amp;lt;code&amp;gt;FlutterFragmentActivity&amp;lt;\\\\\\\/code&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Inherit from FlutterFragmentActivity&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import io.flutter.embedding.android.FlutterFragmentActivity\\\\\\\\n\\\\\\\\nclass MainActivity: FlutterFragmentActivity() {\\\\\\\\n   \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ ...\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;android_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;0664ddf96111ce63cd3b70deb9a2acce&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;2. Create a configuration object&lt;\\\/h3&gt;\\n&lt;p&gt;Create a configuration object with the following properties:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/advanced-flow?platform=Flutter&amp;amp;integration=Drop-in#test-and-go-live\\&quot;&gt;live environments&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. This is used to filter the list of available payment methods to your shopper. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, this is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code. If you included &lt;code&gt;shopperLocale&lt;\\\/code&gt; in your  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request, Drop-in uses that one.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; and &lt;code&gt;value&lt;\\\/code&gt; of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;. This is used to filter the list of available payment methods to your shopper.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example: &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create a configuration object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;final DropInConfiguration dropInConfiguration = DropInConfiguration(\\\\n  \\\\\\\/\\\\\\\/ Change the environment to live to accept live payments.\\\\n  environment: Environment.test,\\\\n  clientKey: CLIENT_KEY,\\\\n  countryCode: COUNTRY_CODE,\\\\n  shopperLocale: SHOPPER_LOCALE, \\\\\\\/\\\\\\\/ Optional.\\\\n  amount: AMOUNT, \\\\\\\/\\\\\\\/ Optional.\\\\n  \\\\\\\/\\\\\\\/ Configuration for specific payment methods. For example, Apple Pay.\\\\n  applePayConfiguration: applePayConfiguration\\\\n);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;To add configuration for specific payment methods, create an additional configuration object. For example, for Apple Pay:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Create a configuration object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;final ApplePayConfiguration applePayConfiguration = ApplePayConfiguration(\\\\n  merchantId: MERCHANT_ID,\\\\n  merchantName: MERCHANT_NAME,\\\\n);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;h3&gt;Optional configuration&lt;\\\/h3&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;preselectedPaymentMethodTitle&lt;\\\/code&gt;  &lt;br&gt; Only for iOS.&lt;\\\/td&gt;\\n&lt;td&gt;When you have a preselected payment method, sets the title of the Drop-in overlay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodNames&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you want to use custom names when displaying payment methods, set the name to use for each payment method.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Add optional configuration&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;final DropInConfiguration dropInConfiguration = DropInConfiguration(\\\\n  \\\\\\\/\\\\\\\/ Change the environment to live to accept live payments.\\\\n  environment: Environment.test,\\\\n  clientKey: CLIENT_KEY,\\\\n  countryCode: COUNTRY_CODE,\\\\n  shopperLocale: SHOPPER_LOCALE, \\\\\\\/\\\\\\\/ Optional.\\\\n  amount: AMOUNT, \\\\\\\/\\\\\\\/ Optional.\\\\n  \\\\\\\/\\\\\\\/ Configuration for specific payment methods. For example, Apple Pay.\\\\n  applePayConfiguration: applePayConfiguration\\\\n  \\\\\\\/\\\\\\\/ Optional Drop-in configuration.\\\\n  paymentMethodNames: {\\\\n      \\\\\\&quot;scheme\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n  },\\\\n);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;622a654348ac47c155387497adfd247a&quot;:&quot;&lt;h3 id=\\&quot;show\\&quot;&gt;4. Show Drop-in in your app&lt;\\\/h3&gt;\\n&lt;p&gt;Call &lt;code&gt;startDropin&lt;\\\/code&gt; to show the Drop-in, passing the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;dropInConfiguration&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The configuration object you created.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethodsResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The full  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; response.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;checkout&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;advancedCheckout&lt;\\\/code&gt; that you created.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Show Drop-in&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;final PaymentResult paymentResult =  await AdyenCheckout.advanced.startDropIn(\\\\n  dropInConfiguration: dropInConfiguration,\\\\n  paymentMethods: paymentMethodsResponse,\\\\n  checkout: advancedCheckout,\\\\n);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Drop-in handles the payment flow.&lt;\\\/p&gt;\\n&lt;h3&gt;5. Dismiss Drop-in (optional)&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You can optionally implement the method to dismiss Drop-in, if this is required for your app. For example, if you want to stop showing the Drop-in UI when the shopper abandons your payment page for an extended period of time.&lt;\\\/p&gt;\\n&lt;p&gt;Use the global &lt;code&gt;AdyenCheckout.advanced.stopDropIn();&lt;\\\/code&gt; method to dismiss Drop-in. If you do not implement this method, Drop-in is automatically dismissed when the payment flow ends.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;If the shopper has been redirected to a third-party app, for example to authorize the payment on an issuer-hosted website, they can still complete the payment even after you dismiss the Drop-in UI.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;e26e918221351dca15af246c2e1a6544&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n &lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/p&gt;\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, Drop-in calls &lt;code&gt;onSubmit&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request specifying:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The complete &lt;code&gt;payload&lt;\\\/code&gt; of the &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client app that includes the payment method details and other required information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The object that includes information collected by Drop-in to track the user&#039;s payment journey, including information like the &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt;. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; &lt;strong&gt;iOS&lt;\\\/strong&gt;: Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. You also need to: &lt;ol&gt;&lt;li&gt;Add the return URL handler to your &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/example\\\/ios\\\/Runner\\\/AppDelegate.swift#L18\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;AppDelegate&lt;\\\/a&gt; in your native iOS layer. &lt;\\\/li&gt;&lt;li&gt;Configure the custom URL scheme in your &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/example\\\/ios\\\/Runner\\\/Info.plist\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Info.plist file&lt;\\\/a&gt;. &lt;\\\/li&gt;&lt;\\\/ol&gt; &lt;br&gt; iOS example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; &lt;strong&gt;Android&lt;\\\/strong&gt;: Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;\\\/ul&gt; Use the &lt;code&gt;AdyenCheckout.instance.getReturnUrl()&lt;\\\/code&gt; method to get the value, or hardcode the string. &lt;br&gt;&lt;br&gt; Android example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example&lt;\\\/code&gt;  &lt;br&gt;&lt;br&gt; &lt;strong&gt;Format&lt;\\\/strong&gt;: Maximum 1024 characters. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example of a payment request for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Map the response to one of the following &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/lib\\\/src\\\/common\\\/model\\\/payment_event.dart\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;PaymentEvent&lt;\\\/code&gt;\\n&lt;\\\/a&gt; objects:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Finished&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment is finished.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Action&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An additional action is required. Drop-in automatically handles the additional action.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Error&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An &lt;a href=\\&quot;#errors\\&quot;&gt;error&lt;\\\/a&gt; has occured.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the object to your client. The &lt;code&gt;onSubmit&lt;\\\/code&gt; callback expects it.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;errors\\&quot;&gt;Errors&lt;\\\/h3&gt;\\n&lt;p&gt;If an error occurs, you get one of the following error codes:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Error code&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;th&gt;Action to take&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;canceledByShopper&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper canceled the payment.&lt;\\\/td&gt;\\n&lt;td&gt;Take the shopper back to the checkout page.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;notSupported&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method isn&#039;t supported by the shopper&#039;s device.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that the payment method isn&#039;t supported by their device.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noClientKey&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;clientKey&lt;\\\/code&gt; configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPayment&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;payment&lt;\\\/code&gt; information configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;invalidPaymentMethods&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t parse the &lt;code&gt;paymentMethods&lt;\\\/code&gt; list, or the list is empty.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPaymentMethod&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t find the selected payment method.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that their selected payment method is currently unavailable.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;}},&quot;components&quot;:{&quot;label&quot;:&quot;Components&quot;,&quot;description&quot;:&quot;Use our customizable UI components&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;Flutter Components&lt;\\\/h2&gt;\\n&lt;p&gt;Render individual payment methods anywhere in your app.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=flutter%20components\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Low development time to integrate each payment method component&lt;\\\/li&gt;\\n&lt;li&gt;UI styling customization for each payment method&lt;\\\/li&gt;\\n&lt;li&gt;Flexibility to add payment method components with configuration for each&lt;\\\/li&gt;\\n&lt;li&gt;3D Secure 2 support using the 3D Secure 2 Component&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;visual_images&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/flutter\\\/components\\\/visual\\\/flutter-components.svg&quot;,&quot;external_content&quot;:&quot;&lt;h3&gt;Adyen Flutter on GitHub&lt;\\\/h3&gt;\\n&lt;p&gt;&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\&quot;&gt;View the Adyen Flutter repository&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/github.com\\\/adyen-examples\\&quot;&gt;View our example integrations&lt;\\\/a&gt;&lt;\\\/p&gt;&quot;,&quot;external_icon&quot;:&quot;\\\/user\\\/pages\\\/filters\\\/sessions-flow-integration\\\/flutter\\\/github\\\/github-mark.png&quot;,&quot;versions&quot;:{&quot;version-1.8.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;f17a87c2a7f6fbd981a2862488771867&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;62a3814be121a7e9100374354bef551a&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;5fc175edfe47ed641852ceba109627e8&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;05b30ec7de21eb91ee24db5d8cfaadc4&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;3bdad1c5daa9979d46d8133ce352554b&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;26c04f89a656af843765387b5b65515a&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;1d9e89917b6565ba8b33772624161012&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;96c542ba7dc582fb333c426bdd6baf71&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.8.1&quot;}},&quot;version-1.8.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;f17a87c2a7f6fbd981a2862488771867&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;62a3814be121a7e9100374354bef551a&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;5fc175edfe47ed641852ceba109627e8&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;05b30ec7de21eb91ee24db5d8cfaadc4&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;3bdad1c5daa9979d46d8133ce352554b&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;26c04f89a656af843765387b5b65515a&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;1d9e89917b6565ba8b33772624161012&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;96c542ba7dc582fb333c426bdd6baf71&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;1.8.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-1.7.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;f17a87c2a7f6fbd981a2862488771867&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;62a3814be121a7e9100374354bef551a&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;5fc175edfe47ed641852ceba109627e8&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;05b30ec7de21eb91ee24db5d8cfaadc4&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;adf993b0d1159f88c9153fe43f4252e8&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;26c04f89a656af843765387b5b65515a&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;1d9e89917b6565ba8b33772624161012&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;96c542ba7dc582fb333c426bdd6baf71&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.7.0&quot;}},&quot;version-1.6.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;f17a87c2a7f6fbd981a2862488771867&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;62a3814be121a7e9100374354bef551a&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;5fc175edfe47ed641852ceba109627e8&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;05b30ec7de21eb91ee24db5d8cfaadc4&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;adf993b0d1159f88c9153fe43f4252e8&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;26c04f89a656af843765387b5b65515a&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;1d9e89917b6565ba8b33772624161012&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;96c542ba7dc582fb333c426bdd6baf71&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.6.0&quot;}},&quot;version-1.5.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;f17a87c2a7f6fbd981a2862488771867&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;62a3814be121a7e9100374354bef551a&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;5fc175edfe47ed641852ceba109627e8&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;05b30ec7de21eb91ee24db5d8cfaadc4&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;adf993b0d1159f88c9153fe43f4252e8&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;26c04f89a656af843765387b5b65515a&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;1d9e89917b6565ba8b33772624161012&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;96c542ba7dc582fb333c426bdd6baf71&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.5.1&quot;}},&quot;version-1.5.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;f17a87c2a7f6fbd981a2862488771867&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;62a3814be121a7e9100374354bef551a&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;5fc175edfe47ed641852ceba109627e8&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;05b30ec7de21eb91ee24db5d8cfaadc4&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;adf993b0d1159f88c9153fe43f4252e8&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;26c04f89a656af843765387b5b65515a&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;1d9e89917b6565ba8b33772624161012&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;96c542ba7dc582fb333c426bdd6baf71&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.5.0&quot;}},&quot;version-1.4.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;f17a87c2a7f6fbd981a2862488771867&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;62a3814be121a7e9100374354bef551a&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;5fc175edfe47ed641852ceba109627e8&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;05b30ec7de21eb91ee24db5d8cfaadc4&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;adf993b0d1159f88c9153fe43f4252e8&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;26c04f89a656af843765387b5b65515a&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;1d9e89917b6565ba8b33772624161012&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;96c542ba7dc582fb333c426bdd6baf71&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;1.4.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-1.3.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;f17a87c2a7f6fbd981a2862488771867&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;62a3814be121a7e9100374354bef551a&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;5fc175edfe47ed641852ceba109627e8&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;05b30ec7de21eb91ee24db5d8cfaadc4&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;adf993b0d1159f88c9153fe43f4252e8&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;26c04f89a656af843765387b5b65515a&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;1d9e89917b6565ba8b33772624161012&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;96c542ba7dc582fb333c426bdd6baf71&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.3.0&quot;}},&quot;version-1.2.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;f17a87c2a7f6fbd981a2862488771867&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;62a3814be121a7e9100374354bef551a&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;5fc175edfe47ed641852ceba109627e8&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;05b30ec7de21eb91ee24db5d8cfaadc4&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;adf993b0d1159f88c9153fe43f4252e8&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;26c04f89a656af843765387b5b65515a&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;1d9e89917b6565ba8b33772624161012&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;96c542ba7dc582fb333c426bdd6baf71&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.2.0&quot;}},&quot;version-1.1.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;f17a87c2a7f6fbd981a2862488771867&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;62a3814be121a7e9100374354bef551a&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;5fc175edfe47ed641852ceba109627e8&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;05b30ec7de21eb91ee24db5d8cfaadc4&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;adf993b0d1159f88c9153fe43f4252e8&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;26c04f89a656af843765387b5b65515a&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;1d9e89917b6565ba8b33772624161012&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;96c542ba7dc582fb333c426bdd6baf71&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;1.1.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}},&quot;version-1.0.2&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;f17a87c2a7f6fbd981a2862488771867&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;62a3814be121a7e9100374354bef551a&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;5fc175edfe47ed641852ceba109627e8&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;807b8744592f69c6918600c72b020101&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;adf993b0d1159f88c9153fe43f4252e8&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;26c04f89a656af843765387b5b65515a&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;1d9e89917b6565ba8b33772624161012&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;96c542ba7dc582fb333c426bdd6baf71&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.0.2&quot;}},&quot;version-1.0.1&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;f17a87c2a7f6fbd981a2862488771867&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;62a3814be121a7e9100374354bef551a&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;5fc175edfe47ed641852ceba109627e8&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;807b8744592f69c6918600c72b020101&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;adf993b0d1159f88c9153fe43f4252e8&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;26c04f89a656af843765387b5b65515a&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;1d9e89917b6565ba8b33772624161012&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;96c542ba7dc582fb333c426bdd6baf71&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68},&quot;versions&quot;:{&quot;version&quot;:&quot;1.0.1&quot;}},&quot;version-1.0.0&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;f17a87c2a7f6fbd981a2862488771867&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;62a3814be121a7e9100374354bef551a&quot;},&quot;add_adyen_to_your_app&quot;:{&quot;$ref&quot;:&quot;5fc175edfe47ed641852ceba109627e8&quot;},&quot;create_a_configuration_object&quot;:{&quot;$ref&quot;:&quot;807b8744592f69c6918600c72b020101&quot;},&quot;add_required_callbacks&quot;:{&quot;$ref&quot;:&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;},&quot;show&quot;:{&quot;$ref&quot;:&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;adf993b0d1159f88c9153fe43f4252e8&quot;},&quot;submit_additional_details&quot;:{&quot;$ref&quot;:&quot;26c04f89a656af843765387b5b65515a&quot;},&quot;handle_result&quot;:{&quot;$ref&quot;:&quot;1d9e89917b6565ba8b33772624161012&quot;},&quot;get_payment_outcome&quot;:{&quot;$ref&quot;:&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;96c542ba7dc582fb333c426bdd6baf71&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;636bff5dad2bdbda16af43f74c03dd14&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;1.0.0&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:68}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;4153c4d6ab23f84cdcb08e368cc72462&quot;:&quot;&lt;p&gt;Components are our pre-built UI solution for accepting payments in your app. Each Component renders a payment method you can render anywhere in your app. Your server makes API requests to the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt;,  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt;, and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; endpoints.&lt;\\\/p&gt;\\n&quot;,&quot;f17a87c2a7f6fbd981a2862488771867&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you begin to integrate, make sure you have followed the &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen guide&lt;\\\/a&gt; to:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Get an overview of the steps needed to accept live payments.&lt;\\\/li&gt;\\n&lt;li&gt;Create your test account.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;After you have created your test account:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt; to know the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Required versions:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/support.apple.com\\\/en-us\\\/118387\\&quot;&gt;iOS 12&lt;\\\/a&gt; or later.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/www.android.com\\\/versions\\\/lollipop-5-0\\\/\\&quot;&gt;Android 5.0&lt;\\\/a&gt; or later.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;https:\\\/\\\/kotlinlang.org\\\/docs\\\/whatsnew18.html\\&quot;&gt;Kotlin 1.8&lt;\\\/a&gt; or later.&lt;\\\/li&gt;\\n&lt;li&gt;Gradle v8 or later.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;71994ccb3a43caea28e3bb2d3ce9b449&quot;:&quot;&lt;h2&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For a Components integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details. \\n&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client  app&lt;\\\/strong&gt;: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client  app. &lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The parts of your integration work together to complete the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;The shopper goes to the checkout screen.&lt;\\\/li&gt;\\n&lt;li&gt;Your server uses the shopper&#039;s country and currency information from your client to get available payment methods.&lt;\\\/li&gt;\\n&lt;li&gt;The Component collects the shopper&#039;s payment details, handles the additional action, and shows the payment result to the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;Your webhook server receives the notification containing the payment outcome.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/filters\\\/advanced-flow-integration\\\/flutter\\\/1-0-0\\\/02.how-it-works-adv\\\/components-flow.jpg\\&quot; \\\/&gt;&lt;\\\/p&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps34698\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#prepare-your-front-end\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client  app.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;bfe030136fd2d068f157f7aa2b5655b5&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabCHPSg14040\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;14040&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;62a3814be121a7e9100374354bef551a&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.&lt;\\\/p&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;We use the optional parameters to tailor the list of available payment methods to your shopper.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The platform where the payment is taking place. For example, when you set this to &lt;strong&gt;iOS&lt;\\\/strong&gt;, Adyen returns only the payment methods available for iOS.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. Adyen returns only the payment methods available in this country. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, the &lt;code&gt;shopperlocale&lt;\\\/code&gt; is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code. Your client app also uses this locale.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;For example, to get the available payment methods for a shopper in the &lt;strong&gt;Netherlands&lt;\\\/strong&gt;, for a payment of &lt;strong&gt;EUR&amp;nbsp;10&lt;\\\/strong&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;advanced-flow-post-payment-methods-request&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Android\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Android&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available &lt;code&gt;paymentMethods&lt;\\\/code&gt;:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;\\\/paymentMethods response&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;Cards\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;scheme\\\\\\&quot;\\\\n    ...\\\\n  },\\\\n  {\\\\n    \\\\\\&quot;details\\\\\\&quot;:[...],\\\\n    \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n  },\\\\n  ...\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Pass the response to your client app. Use this in the next step to show available payment methods to the shopper.&lt;\\\/p&gt;&quot;,&quot;5fc175edfe47ed641852ceba109627e8&quot;:&quot;&lt;h2 id=\\&quot;prepare-your-front-end\\&quot;&gt;Add Components to your app&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;1. Add platform-specific configurations&lt;\\\/h3&gt;\\n\\n&lt;div id=\\&quot;tabcCwp242385\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;42385&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;iOS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Add the return URL handler to your &amp;lt;code&amp;gt;AppDelegate.swift&amp;lt;\\\\\\\/code&amp;gt; file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add return URL handler&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;swift\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;override func application(_: UIApplication, open url: URL, options _: [UIApplication.OpenURLOptionsKey: Any] = [:]) -&amp;amp;gt; Bool {\\\\\\\\n    RedirectComponent.applicationDidOpen(from: url)\\\\\\\\nreturn true\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;In your app, add a &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/xcode\\\\\\\/defining-a-custom-url-scheme-for-your-app\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;custom URL scheme&amp;lt;\\\\\\\/a&amp;gt; that matches the return URL.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;For Apple Pay, do the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Complete the steps to &amp;lt;a href=\\\\&amp;quot;\\\\\\\/payment-methods\\\\\\\/apple-pay\\\\\\\/apple-pay-certificate\\\\\\\/ios\\\\&amp;quot;&amp;gt;set up Apple Pay with your own certificate&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;In your Runner target, add Apple Pay as a capability.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;In your Runner target, enter your merchant ID.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ios_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Android&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Set your activity to inherit from &amp;lt;code&amp;gt;FlutterFragmentActivity&amp;lt;\\\\\\\/code&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Inherit from FlutterFragmentActivity&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;kotlin\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import io.flutter.embedding.android.FlutterFragmentActivity\\\\\\\\n\\\\\\\\nclass MainActivity: FlutterFragmentActivity() {\\\\\\\\n    \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ ...\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Declare the intent filter in your &amp;lt;code&amp;gt;AndroidManifest.xml&amp;lt;\\\\\\\/code&amp;gt; file:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Configure your manifest file&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;intent-filter&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;action android:name=\\\\\\\\\\\\&amp;quot;android.intent.action.VIEW\\\\\\\\\\\\&amp;quot; \\\\\\\\\\\\\\\/&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;category android:name=\\\\\\\\\\\\&amp;quot;android.intent.category.DEFAULT\\\\\\\\\\\\&amp;quot; \\\\\\\\\\\\\\\/&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;category android:name=\\\\\\\\\\\\&amp;quot;android.intent.category.BROWSABLE\\\\\\\\\\\\&amp;quot; \\\\\\\\\\\\\\\/&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;data\\\\\\\\n      android:host=\\\\\\\\\\\\&amp;quot;YOUR_APPLICATION_ID\\\\\\\\\\\\&amp;quot; &amp;lt;!-- For example: com.adyen.checkout.flutter.your-app --&amp;gt;\\\\\\\\n      android:path=\\\\\\\\\\\\&amp;quot;YOUR_CUSTOM_PATH\\\\\\\\\\\\&amp;quot; &amp;lt;!-- For example: \\\\\\\\\\\\\\\/adyenPayment --&amp;gt;\\\\\\\\n      android:scheme=\\\\\\\\\\\\&amp;quot;adyencheckout\\\\\\\\\\\\&amp;quot; \\\\\\\\\\\\\\\/&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/intent-filter&amp;amp;gt;\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;android_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;807b8744592f69c6918600c72b020101&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;2. Create a configuration object&lt;\\\/h3&gt;\\n&lt;p&gt;Create a configuration object with the following properties:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/advanced-flow?platform=Flutter&amp;amp;integration=Components#test-and-go-live\\&quot;&gt;live environments&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. This is used to filter the list of available payment methods to your shopper. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, this is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; and &lt;code&gt;value&lt;\\\/code&gt; of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;. This is used to filter the list of available payment methods to your shopper.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;Most payment methods use the &lt;code&gt;InstantComponent&lt;\\\/code&gt; that takes the &lt;code&gt;InstantComponentConfiguration&lt;\\\/code&gt; object. &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;p&gt;Some payment methods use another type of Component. Check the &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/tree\\\/main\\\/lib\\\/src\\\/common\\\/model\\\/payment_method_configurations\\&quot;&gt;Github repo for configuration for different payment method Components&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabr4Q2991492\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;91492&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;InstantComponent&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Create an &amp;lt;code&amp;gt;InstantComponentConfiguration&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Create the configuration object&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;final InstantComponentConfiguration instantComponentConfiguration = InstantComponentConfiguration(\\\\\\\\n  \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Change the environment to live to accept live payments.\\\\\\\\n  environment: Environment.test,\\\\\\\\n  clientKey: CLIENT_KEY,\\\\\\\\n  countryCode: COUNTRY_CODE,\\\\\\\\n  shopperLocale: SHOPPER_LOCALE, \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Optional.\\\\\\\\n  amount: AMOUNT, \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Optional.\\\\\\\\n);\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;instant&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;instant-configure_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;instant&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Other Component&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;The following example shows the configuration object for cards:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Create a configuration object for the Card Component&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;final CardComponentConfiguration cardComponentConfiguration = CardComponentConfiguration(\\\\\\\\n  \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Change the environment to live to accept live payments.\\\\\\\\n  environment: Environment.test,\\\\\\\\n  clientKey: CLIENT_KEY,\\\\\\\\n  countryCode: COUNTRY_CODE,\\\\\\\\n  cardConfiguration: cardConfiguration\\\\\\\\n  shopperLocale: SHOPPER_LOCALE, \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Optional.\\\\\\\\n  amount: AMOUNT, \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Optional.\\\\\\\\n);\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;other&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;other-configure_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;other&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&quot;,&quot;81fcc4a3516feb99f11b024b3027e5ea&quot;:&quot;&lt;h3 id=\\&quot;launch-and-show\\&quot;&gt;3. Add required callbacks&lt;\\\/h3&gt;\\n&lt;p&gt;In an instance of &lt;code&gt;AdvancedCheckout&lt;\\\/code&gt;, add the following callbacks:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Callback&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onSubmit&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;From your server, make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request.&lt;br&gt; The callback returns: &lt;br&gt; - &lt;code&gt;data&lt;\\\/code&gt;: payment data that you must pass to your server. &lt;br&gt; - &lt;code&gt;extra&lt;\\\/code&gt;: additional information, like the shopper&#039;s shipping address, for some payment methods. This can be &lt;strong&gt;null&lt;\\\/strong&gt; if no additional information is provided.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;onAdditionalDetails&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;From your server, make a  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request, passing the &lt;code&gt;data&lt;\\\/code&gt; object from the &lt;code&gt;onSubmit&lt;\\\/code&gt; callback.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Add required callbacks&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;final AdvancedCheckout advancedCheckout = AdvancedCheckout(\\\\n  onSubmit: YOUR_ON_SUBMIT_CALL,\\\\n  onAdditionalDetails: YOUR_ON_ADDITIONAL_DETAILS_CALL,\\\\n);\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;5cb3ec2afc59d464cc4a44b82d776b21&quot;:&quot;&lt;h3 id=\\&quot;show\\&quot;&gt;4. Show the Component in your app&lt;\\\/h3&gt;\\n&lt;p&gt;Check that the selected payment method is available in your  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; response.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the list of payment methods from the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; response, put the selected payment method in an object of the type &lt;code&gt;Map&amp;lt;String, dynamic&amp;gt;&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tab2OvVU72045\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;72045&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;InstantComponent&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol start=\\\\&amp;quot;2\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;li&amp;gt;Call &amp;lt;code&amp;gt;startInstantComponent&amp;lt;\\\\\\\/code&amp;gt; to show the Component, passing the following:&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Required&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;configuration&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The configuration object you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;paymentMethod&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The payment method from the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/paymentMethods\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/paymentMethods&amp;lt;\\\\\\\/a&amp;gt; response, in an object of type &amp;lt;code&amp;gt;Map&amp;amp;lt;String, dynamic&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;checkout&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The &amp;lt;code&amp;gt;advancedCheckout&amp;lt;\\\\\\\/code&amp;gt; that you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Show the Component&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;final PaymentResult paymentResult = await AdyenCheckout.advanced.startInstantComponent(\\\\\\\\n  configuration: instantComponentConfiguration,\\\\\\\\n  paymentMethod: paymentMethod,\\\\\\\\n  checkout: advancedCheckout,\\\\\\\\n);\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;instant&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;instant-show_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;instant&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Other Component&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;ol start=\\\\&amp;quot;2\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;li&amp;gt;Create the widget for your Component with the required parameters. For example, for the Card Component:&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Required&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;configuration&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The configuration object you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;paymentMethod&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The payment method from the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/paymentMethods\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/paymentMethods&amp;lt;\\\\\\\/a&amp;gt; response, in an object of type &amp;lt;code&amp;gt;Map&amp;amp;lt;String, dynamic&amp;amp;gt;&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;checkout&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The &amp;lt;code&amp;gt;advancedCheckout&amp;lt;\\\\\\\/code&amp;gt; that you created.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;onPaymentResult&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;Create a handler for the &amp;lt;code&amp;gt;paymentResult&amp;lt;\\\\\\\/code&amp;gt; object.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Show the Card Component&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;AdyenCardComponent(\\\\\\\\n  configuration: cardComponentConfiguration,\\\\\\\\n  paymentMethod: paymentMethod,\\\\\\\\n  checkout: advancedCheckout,\\\\\\\\n  onPaymentResult: (paymentResult) async {\\\\\\\\n    \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Handle the `paymentResult` that you get when the shopper completes the payment.\\\\\\\\n  },\\\\\\\\n);\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;other&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;other-show_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;other&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;The Component handles the payment flow.&lt;\\\/p&gt;&quot;,&quot;adf993b0d1159f88c9153fe43f4252e8&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n &lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/p&gt;\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, the Component calls &lt;code&gt;onSubmit&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request specifying:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method from the &lt;code&gt;payload&lt;\\\/code&gt; of the &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client app.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; &lt;strong&gt;iOS&lt;\\\/strong&gt;: Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. You also need to: &lt;ol&gt;&lt;li&gt;Add the return URL handler to your &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/example\\\/ios\\\/Runner\\\/AppDelegate.swift#L18\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;AppDelegate&lt;\\\/a&gt; in your native iOS layer. &lt;\\\/li&gt;&lt;li&gt;Configure the custom URL scheme in your &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/example\\\/ios\\\/Runner\\\/Info.plist\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Info.plist file&lt;\\\/a&gt;. &lt;\\\/li&gt;&lt;\\\/ol&gt; iOS example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; &lt;strong&gt;Android&lt;\\\/strong&gt;: Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. You must add an &lt;a href=\\&quot;https:\\\/\\\/developer.android.com\\\/guide\\\/components\\\/intents-filters\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;intent filter&lt;\\\/a&gt; to your &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/example\\\/android\\\/app\\\/src\\\/main\\\/AndroidManifest.xml#L29\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Manifest.xml&lt;\\\/a&gt; file with this path. This is required for Components.&lt;\\\/li&gt;&lt;\\\/ul&gt; Android example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt;  &lt;br&gt;&lt;br&gt; &lt;strong&gt;Format&lt;\\\/strong&gt;: Maximum 1024 characters. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;checkoutAttemptId&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt; generated by the Component to track the user payment journey. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example of a payment request for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Map the response to one of the following &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/lib\\\/src\\\/common\\\/model\\\/payment_event.dart\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;PaymentEvent&lt;\\\/code&gt;\\n&lt;\\\/a&gt; objects:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Finished&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment is finished.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Action&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An additional action is required. The Component automatically handles the additional action.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Error&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An &lt;a href=\\&quot;#errors\\&quot;&gt;error&lt;\\\/a&gt; has occured.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the object to your client. The &lt;code&gt;onSubmit&lt;\\\/code&gt; callback expects it.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;errors\\&quot;&gt;Errors&lt;\\\/h3&gt;\\n&lt;p&gt;If an error occurs, you get one of the following error codes:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Error code&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;th&gt;Action to take&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;canceledByShopper&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper canceled the payment.&lt;\\\/td&gt;\\n&lt;td&gt;Take the shopper back to the checkout page.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;notSupported&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method isn&#039;t supported by the shopper&#039;s device.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that the payment method isn&#039;t supported by their device.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noClientKey&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;clientKey&lt;\\\/code&gt; configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPayment&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;payment&lt;\\\/code&gt; information configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;invalidPaymentMethods&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t parse the &lt;code&gt;paymentMethods&lt;\\\/code&gt; list, or the list is empty.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPaymentMethod&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t find the selected payment method.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that their selected payment method is currently unavailable.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;26c04f89a656af843765387b5b65515a&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If the shopper performed additional actions to complete the payment, the Component calls &lt;code&gt;onAdditionalDetails&lt;\\\/code&gt; to make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request from your server:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send additional payment details&#039;\\&quot; :id=\\&quot;&#039;details-request-component&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{hint:object passed from your client app}STATE_DATA{\\\\\\\/hint}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nString xApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nClient client = new Client(xApiKey,Environment.TEST);\\\\nCheckout checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nPaymentsDetailsRequest paymentsDetailsRequest = STATE_DATA;\\\\nPaymentsResponse paymentsDetailsResponse = checkout.paymentsDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\n$params = STATE_DATA;\\\\n$result = $service-&amp;gt;paymentsDetails($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed.\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from the client app, deserialized from JSON to a data structure.\\\\nvar paymentsDetailsRequest = STATE_DATA;\\\\nvar paymentsDetailsResponse = checkout.PaymentDetails(paymentsDetailsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;[ADYEN_API_KEY]&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\ncheckout.paymentsDetails(STATE_DATA).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set your X-API-KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;[ADYEN_API_KEY]\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nreq := STATE_DATA;\\\\nres, httpRes, err := client.Checkout.PaymentsDetails(&amp;amp;req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresult = adyen.checkout.payments_details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set your X-API-KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is an object passed from your client app, deserialized from JSON to a data structure.\\\\nrequest = STATE_DATA\\\\nresponse = adyen.checkout.payments.details(request)\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client\\\\n   puts response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode to your client\\\\n   puts response.body[:resultCode]\\\\nend&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Example responses:&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabjzgL242118\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;42118&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Successful payment&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Successful payment response&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n  \\\\\\\\\\\\&amp;quot;pspReference\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;NC6HT9CRT65ZGN82\\\\\\\\\\\\&amp;quot;,\\\\\\\\n  \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Authorised\\\\\\\\\\\\&amp;quot;\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;successful_payment_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Refused payment&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Refused payment response&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n  \\\\\\\\\\\\&amp;quot;pspReference\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;KHQC5N7G84BLNK43\\\\\\\\\\\\&amp;quot;,\\\\\\\\n  \\\\\\\\\\\\&amp;quot;refusalReason\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Not enough balance\\\\\\\\\\\\&amp;quot;,\\\\\\\\n  \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Refused\\\\\\\\\\\\&amp;quot;\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;refused_payment_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;ol&gt;\\n&lt;li&gt;Map the response to a &lt;code&gt;PaymentEvent&lt;\\\/code&gt; object.&lt;\\\/li&gt;\\n&lt;li&gt;Pass the object from your server to your client app. The &lt;code&gt;onAdditionalDetail&lt;\\\/code&gt; callback expects it.\\n&lt;ul&gt;\\n&lt;li&gt;If another additional action is required, the Component handles it.&lt;\\\/li&gt;\\n&lt;li&gt;If no additional action is required, the Component completes the payment flow.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;1d9e89917b6565ba8b33772624161012&quot;:&quot;&lt;h2 id=\\&quot;handle-the-result\\&quot;&gt;Handle the result&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the Component completes the payment flow, you get one of the following objects:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Object&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;PaymentAdvancedFinished&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment was successfully submitted. Contains a &lt;code&gt;resultCode&lt;\\\/code&gt; with the status of the payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;PaymentCancelledByUser&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment was canceled by the user.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;PaymentError&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment encountered an error.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;Handle the object and &lt;a href=\\&quot;#inform-the-shopper\\&quot;&gt;inform the shopper&lt;\\\/a&gt;.&lt;\\\/p&gt;&quot;,&quot;77ce6c242fd2fc22c6d02932e6b94cda&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After the Component finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;&lt;code&gt;resultCode&lt;\\\/code&gt;&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;96c542ba7dc582fb333c426bdd6baf71&quot;:&quot;&lt;h2 id=\\&quot;test-and-go-live\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0&lt;a href=\\&quot;\\\/development-resources\\\/testing\\&quot;&gt;test your integration&lt;\\\/a&gt;. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;. Review the process to start accepting payments on &lt;a href=\\&quot;\\\/get-started-with-adyen\\&quot;&gt;Get started with Adyen&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?=1#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.\\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Load Components from one of our live environments and set the &lt;code&gt;environment&lt;\\\/code&gt; to match your live endpoints:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Endpoint region&lt;\\\/th&gt;\\n&lt;th&gt;Value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Europe (EU) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;europe&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;United States (US) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;unitedStates&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Australia (AU) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;australia&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Asia Pacific &amp;amp; Southeast (APSE) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;apse&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;India (IN) live&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;india&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;636bff5dad2bdbda16af43f74c03dd14&quot;:&quot;&lt;h2 id=\\&quot;next-steps\\&quot;&gt;Next steps&lt;\\\/h2&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps82541\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Modify payments&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods#add-payment-methods-to-your-account\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Tokenization&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Save shopper payment details for later payments.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:45%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;3D Secure authentication&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Comply with regulations such as PSD2 SCA in Europe.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;05b30ec7de21eb91ee24db5d8cfaadc4&quot;:&quot;&lt;h3 id=\\&quot;configure\\&quot;&gt;2. Create a configuration object&lt;\\\/h3&gt;\\n&lt;p&gt;Create a configuration object with the following properties:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;environment&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Use &lt;strong&gt;test&lt;\\\/strong&gt;. When you are ready to accept live payments, change the value to one of our &lt;a href=\\&quot;\\\/online-payments\\\/build-your-integration\\\/advanced-flow?platform=Flutter&amp;amp;integration=Components#test-and-go-live\\&quot;&gt;live environments&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;clientKey&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;A public key linked to your API credential, used for &lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication\\&quot;&gt;client-side authentication&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;img title=&#039;-white_check_mark-&#039; alt=&#039;-white_check_mark-&#039; class=&#039;smileys&#039; src=&#039;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png&#039;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. This is used to filter the list of available payment methods to your shopper. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;td&gt;By default, this is set to &lt;strong&gt;en-US&lt;\\\/strong&gt;. To change the language, set this to the shopper&#039;s language and country code. If you included &lt;code&gt;shopperLocale&lt;\\\/code&gt; in your  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request, the Component uses that one.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; and &lt;code&gt;value&lt;\\\/code&gt; of the payment, in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;. This is used to filter the list of available payment methods to your shopper.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;Most payment methods use the &lt;code&gt;InstantComponent&lt;\\\/code&gt; that takes the &lt;code&gt;InstantComponentConfiguration&lt;\\\/code&gt;, so they do not have specific configuration. &lt;a id=\\&quot;pm-config\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;p&gt;Some payment methods use another type of Component that requires specific configuration. Check the &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/tree\\\/main\\\/lib\\\/src\\\/common\\\/model\\\/payment_method_configurations\\&quot;&gt;Github repo for configuration for different payment method Components&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabeM41p88619\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;88619&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;InstantComponent&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;Create an &amp;lt;code&amp;gt;InstantComponentConfiguration&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Create the configuration object&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;final InstantComponentConfiguration instantComponentConfiguration = InstantComponentConfiguration(\\\\\\\\n  \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Change the environment to live to accept live payments.\\\\\\\\n  environment: Environment.test,\\\\\\\\n   clientKey: CLIENT_KEY,\\\\\\\\n   countryCode: COUNTRY_CODE,\\\\\\\\n   shopperLocale: SHOPPER_LOCALE, \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Optional.\\\\\\\\n   amount: AMOUNT, \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Optional.\\\\\\\\n);\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;instant&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;instant-configure_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;instant&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Other Component&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;p&amp;gt;The following example shows the configuration object for cards:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Create a configuration object for the Card Component&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;final CardComponentConfiguration cardComponentConfiguration = CardComponentConfiguration(\\\\\\\\n  \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Change the environment to live to accept live payments.\\\\\\\\n  environment: Environment.test,\\\\\\\\n  clientKey: CLIENT_KEY,\\\\\\\\n  countryCode: COUNTRY_CODE,\\\\\\\\n  shopperLocale: SHOPPER_LOCALE, \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Optional.\\\\\\\\n  amount: AMOUNT, \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Optional.\\\\\\\\n);\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:&amp;quot;other&amp;quot;,&amp;quot;oldTabId&amp;quot;:&amp;quot;other-configure_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;other&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;true&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&quot;,&quot;3bdad1c5daa9979d46d8133ce352554b&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n &lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/p&gt;\\n&lt;p&gt;When the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, the Component calls &lt;code&gt;onSubmit&lt;\\\/code&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request specifying:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The &lt;code&gt;currency&lt;\\\/code&gt; of the payment and its &lt;code&gt;value&lt;\\\/code&gt; in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The complete &lt;code&gt;payload&lt;\\\/code&gt; of the &lt;code&gt;onSubmit&lt;\\\/code&gt; event from your client app that includes the payment method details and other required information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The object that includes information collected by the Component to track the user&#039;s payment journey, including information like the &lt;a href=\\&quot;\\\/online-payments\\\/analytics-and-data-tracking#data-we-are-collecting\\&quot;&gt;checkout attempt identifier&lt;\\\/a&gt;. This is required to use the &lt;a href=\\&quot;\\\/uplift#uplift-dashboards\\&quot;&gt;Checkout dashboard&lt;\\\/a&gt; that lets you analyze your checkout performance.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; &lt;strong&gt;iOS&lt;\\\/strong&gt;: Use the &lt;a href=\\&quot;https:\\\/\\\/developer.apple.com\\\/documentation\\\/xcode\\\/defining-a-custom-url-scheme-for-your-app\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;custom URL scheme&lt;\\\/a&gt; for your app. You also need to: &lt;ol&gt;&lt;li&gt;Add the return URL handler to your &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/example\\\/ios\\\/Runner\\\/AppDelegate.swift#L18\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;AppDelegate&lt;\\\/a&gt; in your native iOS layer. &lt;\\\/li&gt;&lt;li&gt;Configure the custom URL scheme in your &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/example\\\/ios\\\/Runner\\\/Info.plist\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Info.plist file&lt;\\\/a&gt;. &lt;\\\/li&gt;&lt;\\\/ol&gt; iOS example: &lt;code&gt;com.mydomain.adyencheckout:\\\/\\\/&lt;\\\/code&gt; &lt;br&gt;&lt;br&gt; &lt;strong&gt;Android&lt;\\\/strong&gt;: Use the combination of: &lt;ul&gt;&lt;li&gt;&lt;code&gt;adyencheckout:\\\/\\\/&lt;\\\/code&gt; scheme&lt;\\\/li&gt;&lt;li&gt;Your package name&lt;\\\/li&gt;&lt;li&gt;A path. You must add an &lt;a href=\\&quot;https:\\\/\\\/developer.android.com\\\/guide\\\/components\\\/intents-filters\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;intent filter&lt;\\\/a&gt; to your &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/example\\\/android\\\/app\\\/src\\\/main\\\/AndroidManifest.xml#L29\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Manifest.xml&lt;\\\/a&gt; file with this path. This is required for Components.&lt;\\\/li&gt;&lt;\\\/ul&gt; Android example: &lt;code&gt;adyencheckout:\\\/\\\/com.adyen.adyen_checkout_example\\\/adyenPayment&lt;\\\/code&gt;  &lt;br&gt;&lt;br&gt; &lt;strong&gt;Format&lt;\\\/strong&gt;: Maximum 1024 characters. &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;\\n  &lt;code&gt;applicationInfo&lt;\\\/code&gt;\\n&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to &lt;a href=\\&quot;\\\/development-resources\\\/building-adyen-solutions\\&quot;&gt;Building Adyen solutions&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n   &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, see &lt;a href=\\&quot;\\\/risk-management\\\/configure-manual-risk\\\/required-risk-field-reference\\&quot;&gt;Required risk fields&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/native-3ds2\\\/android-drop-in#make-a-payment\\&quot;&gt;Native 3D Secure 2 authentication&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example of a payment request for EUR 10&#039;\\&quot; :id=\\&quot;&#039;post-payments-request-ios&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{hint:paymentMethod field of an object passed from your client app}STATE_DATA{\\\\\\\/hint},\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set your ADYEN_API_KEY with the API key from the Customer Area.\\\\nClient client = new Client(System.getenv(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;), Environment.TEST);\\\\nPaymentsApi checkout = new PaymentsApi(client);\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\npaymentRequest.setMerchantAccount(System.getenv(\\\\&amp;quot;MERCHANT_ACCOUNT\\\\&amp;quot;));\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client.\\\\nString STATE_DATA = \\\\&amp;quot;{\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;number\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;4111111111111111\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;cvc\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;737\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryMonth\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;10\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;expiryYear\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;2020\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;  \\\\\\\\\\\\&amp;quot;holderName\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;John Smith\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\&amp;quot; +\\\\n                    \\\\&amp;quot;}\\\\\\\\n\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Deserialize the payment method from STATE_DATA.\\\\npaymentRequest.setPaymentMethod(CheckoutPaymentMethod.fromJson(STATE_DATA));\\\\n\\\\nAmount amount = new Amount();\\\\namount.setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;);\\\\namount.setValue(1000L);\\\\n\\\\npaymentRequest.setAmount(amount);\\\\npaymentRequest.setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;);\\\\npaymentRequest.setReturnUrl(\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Add your idempotency key.\\\\nRequestOptions requestOptions = new RequestOptions();\\\\nrequestOptions.setIdempotencyKey(\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\&amp;quot;);\\\\n\\\\nPaymentResponse response = checkout.payments(paymentRequest, requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\n$client = new \\\\\\\\Adyen\\\\\\\\Client();\\\\n$client-&amp;gt;setEnvironment(\\\\\\\\Adyen\\\\\\\\Environment::TEST);\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n$service = new \\\\\\\\Adyen\\\\\\\\Service\\\\\\\\Checkout($client);\\\\n\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n$paymentMethod = STATE_DATA;;\\\\n\\\\n$params = array(\\\\n    \\\\&amp;quot;paymentMethod\\\\&amp;quot; =&amp;gt; $paymentMethod,\\\\n    \\\\&amp;quot;amount\\\\&amp;quot; =&amp;gt; array(\\\\n        \\\\&amp;quot;currency\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n        \\\\&amp;quot;value\\\\&amp;quot; =&amp;gt; 1000\\\\n    ),\\\\n    \\\\&amp;quot;reference\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    \\\\&amp;quot;returnUrl\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    \\\\&amp;quot;merchantAccount\\\\&amp;quot; =&amp;gt; \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;\\\\n);\\\\n$result = $service-&amp;gt;payments($params);\\\\n\\\\n\\\\\\\/\\\\\\\/ Check if further action is needed\\\\nif (array_key_exists(\\\\&amp;quot;action\\\\&amp;quot;, $result)){\\\\n   \\\\\\\/\\\\\\\/ Pass the action object to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[\\\\&amp;quot;action\\\\&amp;quot;]\\\\n}\\\\nelse {\\\\n   \\\\\\\/\\\\\\\/ No further action needed, pass the resultCode to your client.\\\\n   \\\\\\\/\\\\\\\/ $result[&#039;resultCode&#039;]\\\\n}&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nstring apiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;;\\\\nvar client = new Client (apiKey, Environment.Test);\\\\nvar checkout = new Checkout(client);\\\\nvar amount = new Adyen.Model.Checkout.Amount(\\\\&amp;quot;EUR\\\\&amp;quot;, 1000);\\\\nvar paymentsRequest = new Adyen.Model.Checkout.PaymentRequest\\\\n{\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\n    PaymentMethod = STATE_DATA,\\\\n    Amount = amount,\\\\n    Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl = @\\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n};\\\\nvar paymentResponse = checkout.Payments(paymentsRequest);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;const {Client, Config, CheckoutAPI} = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\nconst config = new Config();\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nconfig.apiKey = &#039;ADYEN_API_KEY&#039;;\\\\nconfig.merchantAccount = &#039;ADYEN_MERCHANT_ACCOUNT&#039;;\\\\nconst client = new Client({ config });\\\\nclient.setEnvironment(\\\\&amp;quot;TEST\\\\&amp;quot;);\\\\nconst checkout = new CheckoutAPI(client);\\\\ncheckout.payments({\\\\n    merchantAccount: config.merchantAccount,\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from the your client app, deserialized from JSON to a data structure.\\\\n    paymentMethod: STATE_DATA,\\\\n    amount: { currency: \\\\&amp;quot;EUR\\\\&amp;quot;, value: 1000, },\\\\n    reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    returnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;\\\\n}).then(res =&amp;gt; res);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;import (\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n    \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v5\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n    Environment: common.TestEnv,\\\\n    ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n})\\\\n\\\\\\\/\\\\\\\/ STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod := STATE_DATA\\\\nres, httpRes, err := client.Checkout.Payments(&amp;amp;checkout.PaymentRequest{\\\\n    PaymentMethod: paymentMethod,\\\\n    Amount: checkout.Amount{\\\\n        Value:    1000,\\\\n        Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    },\\\\n    Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n    ReturnUrl: \\\\&amp;quot;my-app:\\\\\\\/\\\\\\\/adyen\\\\&amp;quot;,\\\\n    MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n})&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen.Adyen()\\\\nadyen.payment.client.platform = \\\\&amp;quot;test\\\\&amp;quot;\\\\nadyen.client.xapikey = &#039;ADYEN_API_KEY&#039;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from your client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresult = adyen.checkout.payments({\\\\n    &#039;paymentMethod&#039;: paymentMethod,\\\\n    &#039;amount&#039;: {\\\\n        &#039;value&#039;: 1000,\\\\n        &#039;currency&#039;: &#039;EUR&#039;\\\\n    },\\\\n    &#039;reference&#039;: &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    &#039;returnUrl&#039;: &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    &#039;merchantAccount&#039;: &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed\\\\nif &#039;action&#039; in result.message:\\\\n   # Pass the action object to your client.\\\\n   # result.message[&#039;action&#039;]\\\\nelse:\\\\n   # No further action needed, pass the resultCode to your client.\\\\n   # result.message[&#039;resultCode&#039;]&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ruby&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;require &#039;adyen-ruby-api-library&#039;\\\\n\\\\n# Set ADYEN_API_KEY with the API key from the Customer Area.\\\\nadyen = Adyen::Client.new\\\\nadyen.env = :test\\\\nadyen.api_key = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n\\\\n# STATE_DATA is the paymentMethod field of an object passed from the front end or client app, deserialized from JSON to a data structure.\\\\npaymentMethod = STATE_DATA\\\\n\\\\nresponse = adyen.checkout.payments({\\\\n    :paymentMethod =&amp;gt; paymentMethod,\\\\n    :amount =&amp;gt; {\\\\n        :currency =&amp;gt; &#039;EUR&#039;,\\\\n        :value =&amp;gt; 1000\\\\n    },\\\\n    :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n    :returnUrl =&amp;gt; &#039;my-app:\\\\\\\/\\\\\\\/adyen&#039;,\\\\n    :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;\\\\n})\\\\n\\\\n# Check if further action is needed.\\\\nif response.body.has_key(:action)\\\\n   # Pass the action object to your client app.\\\\n   # response.body[:action]\\\\nelse\\\\n   # No further action needed, pass the resultCode object to your client app.\\\\n   # response.body[:resultCode]&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;ol start=\\&quot;2\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;Map the response to one of the following &lt;a href=\\&quot;https:\\\/\\\/github.com\\\/Adyen\\\/adyen-flutter\\\/blob\\\/main\\\/lib\\\/src\\\/common\\\/model\\\/payment_event.dart\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;\\n  &lt;code&gt;PaymentEvent&lt;\\\/code&gt;\\n&lt;\\\/a&gt; objects:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Finished&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment is finished.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Action&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An additional action is required. The Component automatically handles the additional action.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;Error&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An &lt;a href=\\&quot;#errors\\&quot;&gt;error&lt;\\\/a&gt; has occured.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the object to your client. The &lt;code&gt;onSubmit&lt;\\\/code&gt; callback expects it.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3 id=\\&quot;errors\\&quot;&gt;Errors&lt;\\\/h3&gt;\\n&lt;p&gt;If an error occurs, you get one of the following error codes:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Error code&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;th&gt;Action to take&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;canceledByShopper&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper canceled the payment.&lt;\\\/td&gt;\\n&lt;td&gt;Take the shopper back to the checkout page.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;notSupported&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method isn&#039;t supported by the shopper&#039;s device.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that the payment method isn&#039;t supported by their device.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noClientKey&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;clientKey&lt;\\\/code&gt; configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPayment&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;No &lt;code&gt;payment&lt;\\\/code&gt; information configured.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;invalidPaymentMethods&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t parse the &lt;code&gt;paymentMethods&lt;\\\/code&gt; list, or the list is empty.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that an error occurred.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;strong&gt;noPaymentMethod&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Can&#039;t find the selected payment method.&lt;\\\/td&gt;\\n&lt;td&gt;Tell the shopper that their selected payment method is currently unavailable.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;}},&quot;api&quot;:{&quot;label&quot;:&quot;API only&quot;,&quot;description&quot;:&quot;Use Adyen APIs and your own UI&quot;,&quot;displayVersionDropdown&quot;:true,&quot;visual_content&quot;:&quot;&lt;h2&gt;API only&lt;\\\/h2&gt;\\n&lt;p&gt;Create your own client-side UI and use our API endpoints to get the list of available payment methods and submit a payment.&lt;\\\/p&gt;\\n&lt;h3&gt;Supported payment methods&lt;\\\/h3&gt;\\n&lt;p&gt;Cards, buy now pay later, wallets, and many more.&lt;\\\/p&gt;\\n&lt;p&gt;&lt;a href=\\&quot;\\\/payment-methods\\\/?supported_integrations%5B0%5D=api%20only\\&quot;&gt;See all supported payment methods&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h3&gt;Features&lt;\\\/h3&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Full control of styling on your checkout page&lt;\\\/li&gt;\\n&lt;li&gt;Your own UI elements&lt;\\\/li&gt;\\n&lt;li&gt;Creating your own client-side logic&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Handling secure card data and authentication&lt;\\\/h3&gt;\\n&lt;p&gt;You must ensure that your integration complies with regulatory requirements such as &lt;a href=\\&quot;\\\/online-payments\\\/pci-dss-compliance\\&quot;&gt;PCI DSS&lt;\\\/a&gt; and &lt;a href=\\&quot;\\\/online-payments\\\/psd2-sca-compliance-and-implementation-guide\\&quot;&gt;PSD2 SCA&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;We recommend that you use our pre-built client-side solutions to securely do the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;Collect, validate, and encrypt card details&lt;\\\/strong&gt;: Implement our solution to &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/custom-card-integration\\&quot;&gt;handle encrypted card data&lt;\\\/a&gt; with your custom UI and comply with &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4\\&quot;&gt;PCI DSS regulations&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Authenticate transactions with 3D Secure 2&lt;\\\/strong&gt;: Handle the &lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt; using our solution and comply with &lt;a href=\\&quot;\\\/online-payments\\\/psd2-sca-compliance-and-implementation-guide\\\/sca-options\\&quot;&gt;PSD2 SCA regulations for online payments&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;visual_images&quot;:null,&quot;external_content&quot;:null,&quot;external_icon&quot;:null,&quot;versions&quot;:{&quot;version-72&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;f0466956e11aa80ed97962b8f56d02b8&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;07d2ecb5ed3e5b4ce941e6fc8d8e41fe&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;4f1a5f263d2411cc91b967e17559b66f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;8f73244559657311010bcfd0a3711a82&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;72&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-71&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;870349294bcfb296564ec9737d0cc5aa&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;c60029ff5916117a06695ddc18cb292e&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;4f1a5f263d2411cc91b967e17559b66f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;786c1dafef7066cbc356a23eb0c207ef&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;71&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-70&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b174e01ee8db2d61b498336fc129620b&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;68dfb3ae27ddaf47a82bfc8f706456ff&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;4f1a5f263d2411cc91b967e17559b66f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;8e0d2ffeaae92a7b41df5d1dedde2003&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;70&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-69&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a29d80d04b41aad23a1b817f4f33a1c8&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;a3dd363af558599f3e0b8109d888f39b&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;4f1a5f263d2411cc91b967e17559b66f&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;236ee43ba37e5d284f4c2d3885b07fe8&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;69&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-68&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;b82fd853a6a647a346bcc2ef72709ec2&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;3288ae61ae347e95ed8dc0d8d0076cf1&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;85e63389e1d2398e9193a64cb5a60618&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;ab157ff912c4eaea22a34a75a8369fc4&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;68&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-67&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;a528e5aba6375c6edea3c7322319bff6&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;3aa2f4a61319191ba9da0da335a58316&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;85e63389e1d2398e9193a64cb5a60618&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;48123ef61e1fe482c7dd9663dc32b5ca&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;67&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-66&quot;:{&quot;sections&quot;:{&quot;intro&quot;:{&quot;$ref&quot;:&quot;1d43d186aba254c470e458de75718609&quot;},&quot;before_you_begin&quot;:{&quot;$ref&quot;:&quot;b70a81e509a54da6fb991872525e37da&quot;},&quot;how_it_works&quot;:{&quot;$ref&quot;:&quot;572979e4f54f785d3cc1e14627fadd95&quot;},&quot;install_api_library&quot;:{&quot;$ref&quot;:&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;},&quot;get_available_payment_methods&quot;:{&quot;$ref&quot;:&quot;3603510ad47bd9929a8067c22732e351&quot;},&quot;collect_shopper_details&quot;:{&quot;$ref&quot;:&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;},&quot;downloading_logos&quot;:{&quot;$ref&quot;:&quot;3847c027124001dbd878122635d13126&quot;},&quot;make_a_payment&quot;:{&quot;$ref&quot;:&quot;ab3f7535baf13f5b63b8589d498c9072&quot;},&quot;perform_additional_actions&quot;:{&quot;$ref&quot;:&quot;850c2df63575d8dc573dd28dc45c2ac0&quot;},&quot;submit_additional_payment_details&quot;:{&quot;$ref&quot;:&quot;af3dd5c396d3d3217ddd545edf40d8cf&quot;},&quot;show_payment_result&quot;:{&quot;$ref&quot;:&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;},&quot;error_handling&quot;:{&quot;$ref&quot;:&quot;9339cccb051868e8f60981049948cdeb&quot;},&quot;test_and_go_live&quot;:{&quot;$ref&quot;:&quot;51976743859edfbe0863f8222febf901&quot;},&quot;next_steps&quot;:{&quot;$ref&quot;:&quot;b21f96573eb957635d49f8525a08e0f2&quot;}},&quot;versions&quot;:{&quot;version&quot;:&quot;66&quot;},&quot;config&quot;:{&quot;published&quot;:true,&quot;visible&quot;:true,&quot;api_version&quot;:null}},&quot;version-6.31.1&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.31.1&quot;}},&quot;version-6.31.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.31.0&quot;}},&quot;version-6.30.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.30.0&quot;}},&quot;version-6.29.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.29.0&quot;}},&quot;version-6.28.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.28.0&quot;}},&quot;version-6.27.1&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.27.1&quot;}},&quot;version-6.27.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.27.0&quot;}},&quot;version-6.26.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.26.0&quot;}},&quot;version-6.25.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.25.0&quot;}},&quot;version-6.24.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.24.0&quot;}},&quot;version-6.23.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.23.0&quot;}},&quot;version-6.22.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.22.0&quot;}},&quot;version-6.21.0&quot;:{&quot;sections&quot;:null,&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null},&quot;versions&quot;:{&quot;version&quot;:&quot;6.21.0&quot;}},&quot;version-5.72.0&quot;:{&quot;versions&quot;:{&quot;version&quot;:&quot;5.72.0&quot;},&quot;config&quot;:{&quot;published&quot;:null,&quot;visible&quot;:null,&quot;api_version&quot;:null}}},&quot;sections&quot;:[],&quot;components&quot;:{&quot;1d43d186aba254c470e458de75718609&quot;:&quot;&lt;p&gt;With an API-only integration, you create your own UI, implement your own client-side logic, and use our API to send and receive payment data. You have full control over the look and feel of your checkout page.&lt;\\\/p&gt;\\n&lt;p&gt;To reduce your development time and resources, you can use one of our pre-built UI options (Drop-in\\\/Components) instead.&lt;\\\/p&gt;&quot;,&quot;b70a81e509a54da6fb991872525e37da&quot;:&quot;&lt;h2 id=\\&quot;before-you-begin\\&quot;&gt;Requirements&lt;\\\/h2&gt;\\n&lt;p&gt;Before you build your integration, take into account the following requirements and preparations.&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th style=\\&quot;text-align: left;\\&quot;&gt;Requirement&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: left;\\&quot;&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials\\\/roles\\\/\\&quot;&gt;API credential roles&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have the following role: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Checkout webservice role&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/account\\\/user-roles\\&quot;&gt;Customer Area roles&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Make sure that you have one of the following roles: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Merchant admin role&lt;\\\/strong&gt;&lt;\\\/li&gt; &lt;li&gt;&lt;strong&gt;Manage API credentials&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Webhooks&lt;\\\/a&gt;&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Subscribe to the following webhook: &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Standard webhooks&lt;\\\/strong&gt;&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;Limitations&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;ul&gt;&lt;li&gt;Your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;PCI compliance assesment&lt;\\\/a&gt; determines your &lt;a href=\\&quot;#collect-card-details\\&quot;&gt;integration options for card payments&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;For 3D Secure 2 authentication for shoppers using Chrome, your &lt;a href=\\&quot;https:\\\/\\\/developers.google.com\\\/search\\\/blog\\\/2020\\\/01\\\/get-ready-for-new-samesitenone-secure\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;cookies must use the &lt;code&gt;SameSite&lt;\\\/code&gt; attribute&lt;\\\/a&gt;. &lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;Setup steps&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Before you begin: &lt;ul&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen#test-account\\&quot;&gt;Create your Adyen test account&lt;\\\/a&gt;&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/api-credentials#generate-api-key\\&quot;&gt;Get your API key&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/client-side-authentication#get-your-client-key\\&quot;&gt;Get your client key&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;Set up webhooks&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li&gt;If you want to process payments using raw card data, contact your Adyen Account Manager to confirm that you are eligible.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;572979e4f54f785d3cc1e14627fadd95&quot;:&quot;&lt;h2 id=\\&quot;how-it-works\\&quot;&gt;How it works&lt;\\\/h2&gt;\\n&lt;p&gt;For an API-only integration, you must implement the following parts:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;Your payment server&lt;\\\/strong&gt;: sends the API requests to get available payment methods, make a payment, and send additional payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your client&lt;\\\/strong&gt;: shows your custom UI where the shopper makes the payment. Passes data to and receives data from your payment server to handle the payment flow and additional actions on your client.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;Your webhook server&lt;\\\/strong&gt;: receives webhooks that include the outcome of each payment.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h2&gt;Integration steps&lt;\\\/h2&gt;\\n&lt;p&gt;The parts of your integration work together to handle the payment flow:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;From your server, make an API request to &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;get a list of payment methods available to the shopper&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Show the &lt;a href=\\&quot;#collect-shopper-details\\&quot;&gt;payment form to collect the shopper&#039;s payment details&lt;\\\/a&gt; in your UI.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment request&lt;\\\/a&gt; with the data that you have collected from the shopper.&lt;\\\/li&gt;\\n&lt;li&gt;For some payment methods, you use your client to &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt; that your shopper must do. For example, you redirect your shopper to another website or show a QR code that the shopper uses to complete the payment.&lt;\\\/li&gt;\\n&lt;li&gt;From your server, &lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;send additional payment details&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;If you are integrating these parts separately, you can start at the corresponding part of this integration guide:&lt;\\\/p&gt;\\n&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps91523\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/#install-api-library\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/servers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;info\\&quot;&#039;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#collect-shopper-details\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/browser-developers.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;success\\&quot;&#039;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your client.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/#update-your-order-management-system\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;div style=\\&quot;text-align: center;\\&quot;&gt;&lt;p&gt;&lt;img alt=\\&quot;\\&quot; class=\\&quot;icon\\&quot; src=\\&quot;\\\/user\\\/pages\\\/reuse\\\/online-payments\\\/how-it-works-parts\\\/event-code.svg?decoding=auto&amp;amp;fetchpriority=auto\\&quot;&gt;&lt;\\\/p&gt;&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;&lt;tag :variant=&#039;\\&quot;warning\\&quot;&#039;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;&lt;\\\/div&gt;&lt;p&gt;Go to the integration steps for your webhook server.&lt;\\\/p&gt;&lt;\\\/div&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;45a529d0d5cbe8f388da76ecad3295e1&quot;:&quot;&lt;h2 id=\\&quot;install-api-library\\&quot;&gt;Install an API library&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;We provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Use an API version that is up to date.&lt;\\\/li&gt;\\n&lt;li&gt;Have generated models to help you construct requests.&lt;\\\/li&gt;\\n&lt;li&gt;Send the request to Adyen using their built-in HTTP client, so you do not have to create your own.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n\\n&lt;div id=\\&quot;tabLWRJr90750\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;90750&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/java\\\\\\\/advanced\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-java-spring-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Java 11 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/maven.apache.org\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Maven&amp;lt;\\\\\\\/a&amp;gt;, adding this dependency to your project&amp;#039;s POM.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Add the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;xml\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;&amp;amp;lt;dependency&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;groupId&amp;amp;gt;com.adyen&amp;amp;lt;\\\\\\\\\\\\\\\/groupId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;artifactId&amp;amp;gt;adyen-java-api-library&amp;amp;lt;\\\\\\\\\\\\\\\/artifactId&amp;amp;gt;\\\\\\\\n  &amp;amp;lt;version&amp;amp;gt;LATEST_VERSION&amp;amp;lt;\\\\\\\\\\\\\\\/version&amp;amp;gt;\\\\\\\\n&amp;amp;lt;\\\\\\\\\\\\\\\/dependency&amp;amp;gt;\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;You can find the latest version on GitHub. Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-java-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;java\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Import the required classes.\\\\\\\\npackage com.adyen.service;\\\\\\\\n\\\\\\\\nimport com.adyen.Client;\\\\\\\\nimport com.adyen.service.checkout.PaymentsApi;\\\\\\\\nimport com.adyen.model.checkout.Amount;\\\\\\\\nimport com.adyen.enums.Environment;\\\\\\\\nimport com.adyen.service.exception.ApiException;\\\\\\\\n\\\\\\\\nimport java.io.IOException;\\\\\\\\n\\\\\\\\npublic class Snippet {\\\\\\\\n\\\\\\\\n    public Snippet() throws IOException, ApiException {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        Client client = new Client(\\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, Environment.TEST);\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;java_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/php\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-php-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;PHP 7.3 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;cURL with SSL support.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The JSON PHP extension.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;The list of dependencies from the composer require list.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Composer&amp;lt;\\\\\\\/a&amp;gt;. Follow the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/getcomposer.org\\\\\\\/doc\\\\\\\/00-intro.md\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;installation instructions&amp;lt;\\\\\\\/a&amp;gt; if you do not already have composer installed.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;composer require adyen\\\\\\\\\\\\\\\/php-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;In your PHP script, make sure you include the autoloader:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Include the autoloader&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require __DIR__ . &amp;#039;\\\\\\\\\\\\\\\/vendor\\\\\\\\\\\\\\\/autoload.php&amp;#039;;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-php-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;php&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;use Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\Amount;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Model\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\CreateCheckoutSessionRequest;\\\\\\\\nuse Adyen\\\\\\\\\\\\\\\\Service\\\\\\\\\\\\\\\\Checkout\\\\\\\\\\\\\\\\PaymentsApi;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n$requestOptions[&amp;#039;idempotencyKey&amp;#039;] = \\\\\\\\&amp;amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\&amp;amp;quot;;\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n$client = new \\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Client();\\\\\\\\n$client-&amp;amp;gt;setXApiKey(&amp;#039;ADYEN_API_KEY&amp;#039;);\\\\\\\\n$client-&amp;amp;gt;setEnvironment(\\\\\\\\\\\\\\\\Adyen\\\\\\\\\\\\\\\\Environment::TEST);\\\\\\\\n\\\\\\\\n$service = new PaymentsApi($client);&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;php_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET standard 2.0 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;For Terminal API certificate validation, set the application to either of the following:\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET core 2.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;.NET framework 4.6.1 or later&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.nuget.org\\\\\\\/packages\\\\\\\/Adyen\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;NuGet&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;PM&amp;amp;gt; Install-Package Adyen -Version LATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-dotnet-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;cs\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;using Adyen;\\\\\\\\nusing Adyen.Model.Checkout;\\\\\\\\nusing Adyen.Service.Checkout;\\\\\\\\nusing Environment = Adyen.Model.Environment;\\\\\\\\n\\\\\\\\nclass Program\\\\\\\\n{\\\\\\\\n    static void Main()\\\\\\\\n    {\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\n        var config = new Config\\\\\\\\n        {\\\\\\\\n            XApiKey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n            Environment = Environment.Test\\\\\\\\n        };\\\\\\\\n        var client = new Client(config);\\\\\\\\n        var checkout = new PaymentsService(client);\\\\\\\\n\\\\\\\\n        \\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\n        var requestOptions = new Adyen.Model.RequestOptions { IdempotencyKey = \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\\\\\n    }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;c#_2_3&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;NodeJS&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments#checkout-example\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/node-js\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-node-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Node.js version 18 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/www.npmjs.com\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;npm&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;npm install --save @adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\nnpm update @adyen\\\\\\\\\\\\\\\/api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-node-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Setting up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;js\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Require the parts of the module you want to use.\\\\\\\\nconst { Client, CheckoutAPI, Types} = require(\\\\\\\\\\\\&amp;quot;@adyen\\\\\\\\\\\\\\\/api-library\\\\\\\\\\\\&amp;quot;);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Set up the client and service.\\\\\\\\nconst client = new Client({ apiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;, environment: \\\\\\\\\\\\&amp;quot;TEST\\\\\\\\\\\\&amp;quot; });\\\\\\\\nconst checkoutApi = new CheckoutAPI(client);\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Include your idempotency key when you make an API request.\\\\\\\\nconst requestOptions = { idempotencyKey: \\\\\\\\\\\\&amp;quot;YOUR_IDEMPOTENCY_KEY\\\\\\\\\\\\&amp;quot; };\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;nodejs_3_4&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/go\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-golang-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Go 1.13 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/golang\\\\\\\/go\\\\\\\/wiki\\\\\\\/Modules\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Go modules&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;shell\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;go get github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-go-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;go\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;package main\\\\\\\\n\\\\\\\\nimport (\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/checkout\\\\\\\\\\\\&amp;quot;\\\\\\\\n\\\\\\\\t\\\\\\\\\\\\&amp;quot;github.com\\\\\\\\\\\\\\\/adyen\\\\\\\\\\\\\\\/adyen-go-api-library\\\\\\\\\\\\\\\/vLATEST_VERSION\\\\\\\\\\\\\\\/src\\\\\\\\\\\\\\\/common\\\\\\\\\\\\&amp;quot;\\\\\\\\n)\\\\\\\\n\\\\\\\\n\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/ Create a payment object.\\\\\\\\n\\\\\\\\nfunc main () {\\\\\\\\n\\\\\\\\tclient := adyen.NewClient(&amp;amp;amp;common.Config{\\\\\\\\n\\\\\\\\t\\\\\\\\tApiKey: \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;,\\\\\\\\n\\\\\\\\t\\\\\\\\tEnvironment: common.TestEnv,\\\\\\\\n\\\\\\\\t})\\\\\\\\n\\\\\\\\tservice := client.Checkout()\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;go_4_5&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/python\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-python-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Python 3.6 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;(Optional) Packages: Requests or PycURL&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/pip.pypa.io\\\\\\\/en\\\\\\\/stable\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;pip&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;pip install Adyen\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the\\\\u00a0&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-python-api-library\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;py\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;import Adyen\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen.Adyen()\\\\\\\\nadyen.client.xapikey = \\\\\\\\\\\\&amp;quot;ADYEN_API_KEY\\\\\\\\\\\\&amp;quot;\\\\\\\\nadyen.client.platform = \\\\\\\\\\\\&amp;quot;test\\\\\\\\\\\\&amp;quot; # The environment that the library is used in.\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;python_5_6&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div class=\\\\&amp;quot;additional-info-block output-inline\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;h5 class=\\\\&amp;quot;article__heading additional-info-block__title\\\\&amp;quot;&amp;gt;Try our example integration&amp;lt;\\\\\\\/h5&amp;gt;&amp;lt;div class=\\\\&amp;quot;additional-info-block__body\\\\&amp;quot;&amp;gt;&amp;lt;p&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/gitpod-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments#run-this-integration-in-seconds-using-gitpod\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Run it in Gitpod&amp;lt;\\\\\\\/a&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;img src=\\\\&amp;quot;\\\\\\\/reuse\\\\\\\/development-resources\\\\\\\/install-api-library\\\\\\\/ruby\\\\\\\/github-icon.png\\\\&amp;quot; alt=\\\\&amp;quot;\\\\&amp;quot; \\\\\\\/&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/adyen-examples\\\\\\\/adyen-rails-online-payments\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Clone the repository&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n\\\\n&amp;lt;h4&amp;gt;Requirements&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;Ruby 2.7 or later.&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;h4&amp;gt;Installation&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;You can use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/rubygems.org\\\\\\\/\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;RubyGems&amp;lt;\\\\\\\/a&amp;gt;:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Install the API library&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;gem install adyen-ruby-api-library\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;p&amp;gt;Alternatively, you can download the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/github.com\\\\\\\/Adyen\\\\\\\/adyen-ruby-api-library\\\\\\\/releases\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;release on GitHub&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;p&amp;gt;Run &amp;lt;code&amp;gt;bundle install&amp;lt;\\\\\\\/code&amp;gt; to install dependencies.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;h4&amp;gt;Set up the client&amp;lt;\\\\\\\/h4&amp;gt;\\\\n&amp;lt;p&amp;gt;Create a singleton resource that you use for the API requests to Adyen:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Set up your client&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;ruby&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;require &amp;#039;adyen-ruby-api-library&amp;#039;\\\\\\\\n\\\\\\\\n# Set up the client and service.\\\\\\\\nadyen = Adyen::Client.new\\\\\\\\nadyen.api_key = &amp;#039;ADYEN_API_KEY&amp;#039;\\\\\\\\nadyen.env = :test # The environment that the library is used in.&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;ruby_6_7&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;3603510ad47bd9929a8067c22732e351&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-66&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v66\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;43a91e763ccdf17c1aaeff0597bd22bd&quot;:&quot;&lt;h2 id=\\&quot;build-your-payment-form\\&quot;&gt;Build your payment form&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Create your payment form where the shopper enters their information. We recommend that you collect commonly-used &lt;a href=\\&quot;#information-in-the-payment-form\\&quot;&gt;shopper information in your payment form&lt;\\\/a&gt; to process a transactions, depending on your type of business.&lt;br \\\/&gt;\\n&lt;span id=\\&quot;collect-shopper-details\\&quot;&gt;&lt;\\\/span&gt;&lt;br \\\/&gt;\\nSome payment methods require you to collect, or optionally accept, additional information that you include in the payment request. For the additional information you must collect in your payment form for an individual payment method, go to our &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;guide for the individual payment method&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;We provide &lt;a href=\\&quot;#downloading-logos\\&quot;&gt;payment method and issuer logos that you can download&lt;\\\/a&gt; and use in your payment form.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;collect-card-details\\&quot;&gt;Credit and debit card details&lt;\\\/h3&gt;\\n&lt;p&gt;Because governing bodies and organizations regulate the handling of credit and debit card information strictly, you must make sure that you are compliant when collecting card details. When a shopper selects to pay with a card, use the integration option that corresponds to your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;level of PCI compliance&lt;\\\/a&gt;:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;(Recommended) Adyen&#039;s &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/custom-card-integration\\&quot;&gt;Custom Card Component&lt;\\\/a&gt; with encryption: our pre-built UI with logic to securely encrypt and handle payment card data.&lt;\\\/li&gt;\\n&lt;li&gt;Your own UI and logic to collect and handle &lt;a href=\\&quot;\\\/payment-methods\\\/cards\\\/raw-card-data\\&quot;&gt;raw card data&lt;\\\/a&gt;: before you build an integration that collects raw credit and debit card data, you must &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide?tab=api_only_3_4#online-payments\\&quot;&gt;assess your PCI compliance according to the most extensive self-assessment form&lt;\\\/a&gt; and contact your Adyen Account Manager to confirm that you are eligible.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;h3&gt;Information in the payment form&lt;\\\/h3&gt;\\n&lt;p&gt;After collecting information in your payment form, you must add it to corresponding API parameters that you include in the payment request.&lt;\\\/p&gt;\\n&lt;p&gt;For example, for commonly-used information:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Field in the payment form&lt;\\\/th&gt;\\n&lt;th&gt;API request parameter&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;First name&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperName.firstName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Last name&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperName.lastName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Email address&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;shopperEmail&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Billing address (multiple fields)&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;billingAddress&lt;\\\/code&gt; (object)&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Shipping address (multiple fields)&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;deliveryAddress&lt;\\\/code&gt; (object)&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;Phone number&lt;\\\/td&gt;\\n&lt;td&gt;&lt;code&gt;telephoneNumber&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;&quot;,&quot;3847c027124001dbd878122635d13126&quot;:&quot;&lt;div class=\\&quot;accordion-shortcode adl-accordion adl-accordion--max-height-transition\\&quot; data-expand=\\&quot;true\\&quot; data-ignore=\\&quot;anchorjs-link\\&quot;&gt;\\n    \\n    &lt;div class=\\&quot;adl-accordion__item\\&quot; style=\\&quot;\\&quot;&gt;\\n        &lt;div tabindex=\\&quot;0\\&quot; role=\\&quot;item\\&quot; aria-expanded=\\&quot;false\\&quot; class=\\&quot;adl-accordion__header\\&quot;&gt;\\n            &lt;i class=\\&quot;adl-accordion__toggle adl-icon-chevron-down\\&quot;&gt;&lt;\\\/i&gt;\\n            &lt;div class=\\&quot;adl-accordion__title-wrapper\\&quot; data-accordion=\\&quot;#downloading-logos\\&quot;&gt;\\n                                    &lt;h3 class=\\&quot;adl-accordion__title\\&quot;&gt;Downloading logos&lt;\\\/h3&gt;\\n                            &lt;\\\/div&gt;\\n        &lt;\\\/div&gt;\\n        &lt;div role=\\&quot;region\\&quot; class=\\&quot;adl-accordion__content\\&quot;&gt;\\n            \\n&lt;p&gt;If you are building your own UI, we provide payment method and issuing bank logos that you can use on your checkout page. The images are available in PNG format with different sizes and screen resolutions and in SVG format.&lt;\\\/p&gt;\\n&lt;p&gt;If you cannot find a payment method or issuer logo, contact our &lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/ca\\\/ca\\\/contactUs\\\/support.shtml?form=other\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Support Team&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h4&gt;Payment method logos&lt;\\\/h4&gt;\\n&lt;p&gt;Download the images from the links below, specifying:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;img-size&lt;\\\/code&gt;: Specify the size for PNG format. Use the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;small&lt;\\\/strong&gt;: Image size 40x26 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;medium&lt;\\\/strong&gt;: Image size 77x50 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;large&lt;\\\/strong&gt;: Image size 154 x 100 pixels&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;suffix&lt;\\\/code&gt;: Specify the image density for PNG format. If not specified, the images will have the same size as the &lt;code&gt;img-size&lt;\\\/code&gt;.  Append any of the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;@2x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;@3x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-ldpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-hdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;pm-type&lt;\\\/code&gt;: The &lt;code&gt;paymentMethods.type&lt;\\\/code&gt; returned in the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response. For example, &lt;strong&gt;googlepay&lt;\\\/strong&gt; or &lt;strong&gt;primeiropay_boleto&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;For cards, the values you should use are specified under &lt;code&gt;brands&lt;\\\/code&gt; with &lt;code&gt;type&lt;\\\/code&gt;: &lt;strong&gt;scheme&lt;\\\/strong&gt;. For example, &lt;code&gt;mc&lt;\\\/code&gt;, &lt;code&gt;visa&lt;\\\/code&gt;, and &lt;code&gt;amex&lt;\\\/code&gt;. To get a generic card logo, set &lt;code&gt;pm-type&lt;\\\/code&gt; to &lt;strong&gt;card&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Download link for SVG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for SVG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[pm-type].svg\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Download link for PNG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for PNG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[img-size]\\\\\\\/[pm-type][suffix].png\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Examples:&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/mc.svg\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/mc.svg&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/large\\\/googlepay@2x.png\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/large\\\/googlepay@2x.png&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;h4&gt;Issuing bank logos&lt;\\\/h4&gt;\\n&lt;p&gt;Some payment methods such as iDEAL present a list of issuing banks to the shopper.&lt;\\\/p&gt;\\n&lt;p&gt;Download the issuing bank logos from the links below, specifying:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;img-size&lt;\\\/code&gt;: Specify the size for PNG format. Use the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;strong&gt;small&lt;\\\/strong&gt;: Image size 40x26 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;medium&lt;\\\/strong&gt;: Image size 77x50 pixels&lt;\\\/li&gt;\\n&lt;li&gt;&lt;strong&gt;large&lt;\\\/strong&gt;: Image size 154 x 100 pixels&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;suffix&lt;\\\/code&gt;: Specify the image density for PNG format. If not specified, the images will have the same size as the &lt;code&gt;img-size&lt;\\\/code&gt;.  Append any of the following values:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;@2x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;@3x&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-ldpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-hdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;-xxxhdpi&lt;\\\/code&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;pm-type&lt;\\\/code&gt;: The &lt;code&gt;paymentMethods.type&lt;\\\/code&gt; in objects with &lt;code&gt;details.key&lt;\\\/code&gt; &lt;strong&gt;issuer&lt;\\\/strong&gt; returned in the &lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response. For example, &lt;strong&gt;ideal&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;code&gt;issuerid&lt;\\\/code&gt;: The &lt;code&gt;details.items.id&lt;\\\/code&gt; referring to the issuing bank. For example, &lt;strong&gt;1121&lt;\\\/strong&gt; and &lt;strong&gt;1151&lt;\\\/strong&gt; for iDEAL.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;Download link for SVG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for SVG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[pm-type]\\\\\\\/[issuerid].svg\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Download link for PNG:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Download link for PNG&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;js\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-live.adyen.com\\\\\\\/checkoutshopper\\\\\\\/images\\\\\\\/logos\\\\\\\/[img-size]\\\\\\\/[pm-type]\\\\\\\/[issuerid][suffix].png\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;Examples:&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/ideal\\\/1121.svg\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/ideal\\\/1121.svg&lt;\\\/a&gt;&lt;br \\\/&gt;\\n&lt;a href=\\&quot;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/small\\\/ideal\\\/1151-xxhdpi.png\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;https:\\\/\\\/checkoutshopper-live.adyen.com\\\/checkoutshopper\\\/images\\\/logos\\\/small\\\/ideal\\\/1151-xxhdpi.png&lt;\\\/a&gt;&lt;\\\/p&gt;\\n\\n        &lt;\\\/div&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;ab3f7535baf13f5b63b8589d498c9072&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-66&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v66\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;Store the &lt;code&gt;action.paymentData&lt;\\\/code&gt; object on your server.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;#additional-action\\&quot;&gt;Handle the additional action&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response for iDEAL, a redirect payment method&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;RedirectShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot;: {\\\\n    \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQABAgBJp\\\\\\\/z\\\\\\\/T3+6P ...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;ideal\\\\\\&quot;,\\\\n    \\\\\\&quot;url\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/checkoutPaymentRedirect?redirectData=X6Xtf...\\\\\\&quot;,\\\\n    \\\\\\&quot;method\\\\\\&quot;: \\\\\\&quot;GET\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;redirect\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;850c2df63575d8dc573dd28dc45c2ac0&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tab7tWUo55915\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;55915&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice note\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;For security reasons, when displaying the redirect in the app, we recommend that you use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/safariservices\\\\\\\/sfsafariviewcontroller\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;SFSafariViewController&amp;lt;\\\\\\\/a&amp;gt; for iOS or &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.chrome.com\\\\\\\/multidevice\\\\\\\/android\\\\\\\/customtabs\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Chrome Custom Tabs&amp;lt;\\\\\\\/a&amp;gt; for Android, instead of WebView objects. Also refer to the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/topic\\\\\\\/security\\\\\\\/best-practices#webview\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;security best practices&amp;lt;\\\\\\\/a&amp;gt; for WebView.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/66\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;TermUrl&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL for your page, to redirect the shopper to, after they finish authentication on the 3D Secure 2 page. This should be the same as the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; that you include when you &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;make a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-6067370540&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;TermUrl=https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/66\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;af3dd5c396d3d3217ddd545edf40d8cf&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the action you handled:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If you handled a redirect:\\n&lt;ul&gt;\\n&lt;li&gt;For a payment method redirect, pass the URL-decoded &lt;code&gt;redirectResult&lt;\\\/code&gt; and the complete &lt;code&gt;paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;li&gt;For a 3D Secure 2 redirect, pass the URL-decoded &lt;code&gt;MD&lt;\\\/code&gt;, &lt;code&gt;PaRes&lt;\\\/code&gt;, the complete &lt;code&gt;paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;li&gt;If you handled a non-redirect additional action: pass the complete &lt;code&gt;action.paymentData&lt;\\\/code&gt; object from the latest API response.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;What you do depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response includes an additional action.&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt; using the data from the latest  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; response instead of the data from the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response without an action for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response without an action for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n   \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;983c55400b75ae5efcf1daaa42cf2cf6&quot;:&quot;&lt;h2 id=\\&quot;get-the-payment-outcome\\&quot;&gt;Get the payment outcome&lt;\\\/h2&gt;\\n&lt;p&gt;After the shopper finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;inform-the-shopper\\&quot;&gt;Inform the shopper&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Use the &lt;a href=\\&quot;\\\/online-payments\\\/payment-result-codes#final-payment-status\\&quot;&gt;\\n  &lt;code&gt;resultCode&lt;\\\/code&gt;\\n&lt;\\\/a&gt; to show the shopper the &lt;a href=\\&quot;\\\/account\\\/payments-lifecycle\\&quot;&gt;current payment status&lt;\\\/a&gt;. This synchronous response doesn&#039;t give you the final outcome of the payment. You get the final payment status in a webhook that you use to &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;update your order management system&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;h3 id=\\&quot;update-your-order-management-system\\&quot;&gt;Update your order management system&lt;\\\/h3&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;warning&amp;quot;&gt;\\n        Webhook server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;You get the outcome of each payment asynchronously, in an &lt;strong&gt;AUTHORISATION&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot;&gt;webhook&lt;\\\/a&gt;. Use the &lt;code&gt;merchantReference&lt;\\\/code&gt; from the webhook to match it to your order reference.&lt;br \\\/&gt;\\nFor a successful payment, the event contains &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;true&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;033899:1111:03\\\\\\\/2030\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;operations\\\\\\&quot;:[\\\\\\&quot;CANCEL\\\\\\&quot;,\\\\\\&quot;CAPTURE\\\\\\&quot;,\\\\\\&quot;REFUND\\\\\\&quot;],\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;true\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;mc\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;authCode\\\\\\&quot;:\\\\\\&quot;033899\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1111\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:10:22+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;For an unsuccessful payment, you get &lt;code&gt;success&lt;\\\/code&gt;: &lt;strong&gt;false&lt;\\\/strong&gt;, and the &lt;code&gt;reason&lt;\\\/code&gt; field has details about why the payment was unsuccessful.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example webhook for an unsuccessful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;live\\\\\\&quot;: \\\\\\&quot;false\\\\\\&quot;,\\\\n  \\\\\\&quot;notificationItems\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;NotificationRequestItem\\\\\\&quot;:{\\\\n        \\\\\\&quot;eventCode\\\\\\&quot;:\\\\\\&quot;AUTHORISATION\\\\\\&quot;,\\\\n        \\\\\\&quot;merchantAccountCode\\\\\\&quot;:\\\\\\&quot;YOUR_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n        \\\\\\&quot;reason\\\\\\&quot;:\\\\\\&quot;validation 101 Invalid card number\\\\\\&quot;,\\\\n        \\\\\\&quot;amount\\\\\\&quot;:{\\\\n          \\\\\\&quot;currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n          \\\\\\&quot;value\\\\\\&quot;:2500\\\\n        },\\\\n        \\\\\\&quot;success\\\\\\&quot;:\\\\\\&quot;false\\\\\\&quot;,\\\\n        \\\\\\&quot;paymentMethod\\\\\\&quot;:\\\\\\&quot;unknowncard\\\\\\&quot;,\\\\n        \\\\\\&quot;additionalData\\\\\\&quot;:{\\\\n          \\\\\\&quot;expiryDate\\\\\\&quot;:\\\\\\&quot;03\\\\\\\/2030\\\\\\&quot;,\\\\n          \\\\\\&quot;cardBin\\\\\\&quot;:\\\\\\&quot;411111\\\\\\&quot;,\\\\n          \\\\\\&quot;cardSummary\\\\\\&quot;:\\\\\\&quot;1112\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantReference\\\\\\&quot;:\\\\\\&quot;YOUR_REFERENCE\\\\\\&quot;,\\\\n        \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n        \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2021-09-13T14:14:05+02:00\\\\\\&quot;\\\\n      }\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;9339cccb051868e8f60981049948cdeb&quot;:&quot;&lt;h2 id=\\&quot;error-handling\\&quot;&gt;Error handling&lt;\\\/h2&gt;\\n&lt;p&gt;In case you encounter errors in your integration, refer to the following:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/error-codes\\&quot;&gt;API error codes&lt;\\\/a&gt;: If you receive a non-HTTP 200 response, use the &lt;code&gt;errorCode&lt;\\\/code&gt; to troubleshoot and modify your request.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/development-resources\\\/refusal-reasons\\&quot;&gt;Payment refusals&lt;\\\/a&gt;: If you receive an HTTP 200 response with an &lt;strong&gt;Error&lt;\\\/strong&gt; or &lt;strong&gt;Refused&lt;\\\/strong&gt; &lt;code&gt;resultCode&lt;\\\/code&gt;, check the refusal reason and, if possible, modify your request.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&quot;,&quot;51976743859edfbe0863f8222febf901&quot;:&quot;&lt;h2 id=\\&quot;test-and-go-live\\&quot;&gt;Test and go live&lt;\\\/h2&gt;\\n&lt;p&gt;Before going live, use our list of &lt;a href=\\&quot;\\\/development-resources\\\/test-cards-and-credentials\\\/test-card-numbers\\&quot;&gt;test cards and other payment methods&lt;\\\/a&gt; to\\u00a0&lt;a href=\\&quot;\\\/development-resources\\\/testing\\&quot;&gt;test your integration&lt;\\\/a&gt;. We recommend testing each payment method that you intend to offer to your shoppers.&lt;\\\/p&gt;\\n&lt;p&gt;You can check the status of a test payment in your\\u00a0&lt;a href=\\&quot;https:\\\/\\\/ca-test.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Customer Area&lt;\\\/a&gt;, under &lt;strong&gt;Transactions&lt;\\\/strong&gt; &amp;gt;\\u00a0&lt;strong&gt;Payments&lt;\\\/strong&gt;.&lt;\\\/p&gt;\\n&lt;p&gt;To debug or troubleshoot test payments, you can also use &lt;a href=\\&quot;\\\/development-resources\\\/logs-resources\\\/api-logs\\&quot;&gt;API logs&lt;\\\/a&gt; in your test environment.&lt;\\\/p&gt;\\n&lt;p&gt;When you are ready to go live, you need to:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/get-started-with-adyen\\\/application-requirements\\&quot;&gt;Apply for a live account&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Assess your &lt;a href=\\&quot;\\\/development-resources\\\/pci-dss-compliance-guide#online-payments\\&quot;&gt;PCI DSS compliance&lt;\\\/a&gt; by submitting:\\n&lt;ul&gt;\\n&lt;li&gt;the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-A.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-A&lt;\\\/a&gt;, if you are using the Custom Card Component.&lt;\\\/li&gt;\\n&lt;li&gt;the &lt;a href=\\&quot;https:\\\/\\\/www.pcisecuritystandards.org\\\/documents\\\/PCI-DSS-v3_2_1-SAQ-D_Merchant.pdf\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;Self-Assessment Questionnaire-D&lt;\\\/a&gt;, if you are submitting raw card data.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/go-live-checklist\\&quot;&gt;Configure your live account&lt;\\\/a&gt;.\\u00a0&lt;\\\/li&gt;\\n&lt;li&gt;Submit a request to add payment methods in your &lt;a href=\\&quot;https:\\\/\\\/ca-live.adyen.com\\\/\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;live Customer Area&lt;\\\/a&gt; .&lt;\\\/li&gt;\\n&lt;li&gt;Switch from test to our &lt;a href=\\&quot;\\\/development-resources\\\/live-endpoints#checkout-endpoints\\&quot;&gt;live endpoints&lt;\\\/a&gt;.\\n&lt;div class=\\&quot;notices yellow\\&quot;&gt;\\n&lt;p&gt;Make sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; and  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; requests may result in errors, for example, when authenticating with 3D Secure 2.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;b21f96573eb957635d49f8525a08e0f2&quot;:&quot;&lt;div class=\\&quot;next-steps\\&quot; id=\\&quot;next-steps87947\\&quot; &gt;\\n&lt;a href=\\&quot;\\\/development-resources\\\/webhooks\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Set up notifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Receive confirmation when a payment is authorised or fails.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/payment-methods\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__label\\&quot;&gt;required&lt;\\\/div&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Add payment methods&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Learn about payment methods and how to add them to your account.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;a href=\\&quot;\\\/online-payments\\\/modify-payments\\&quot; class=\\&quot;next-steps__step\\&quot; style=\\&quot;width:29%;\\&quot; target=\\&quot;_self\\&quot;&gt;&lt;div class=\\&quot;next-steps__title\\&quot;&gt;Payment modifications&lt;\\\/div&gt;&lt;p class=\\&quot;next-steps__body\\&quot;&gt;&lt;p&gt;Find out how to cancel, refund, or capture a payment using our API.&lt;\\\/p&gt;&lt;\\\/p&gt;&lt;\\\/a&gt;&lt;\\\/div&gt;\\n&quot;,&quot;a528e5aba6375c6edea3c7322319bff6&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/67\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;3aa2f4a61319191ba9da0da335a58316&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;85e63389e1d2398e9193a64cb5a60618&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabpDrHn45151\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;45151&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice note\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;For security reasons, when displaying the redirect in the app, we recommend that you use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/safariservices\\\\\\\/sfsafariviewcontroller\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;SFSafariViewController&amp;lt;\\\\\\\/a&amp;gt; for iOS or &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.chrome.com\\\\\\\/multidevice\\\\\\\/android\\\\\\\/customtabs\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Chrome Custom Tabs&amp;lt;\\\\\\\/a&amp;gt; for Android, instead of WebView objects. Also refer to the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/topic\\\\\\\/security\\\\\\\/best-practices#webview\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;security best practices&amp;lt;\\\\\\\/a&amp;gt; for WebView.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;TermUrl&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL for your page, to redirect the shopper to, after they finish authentication on the 3D Secure 2 page. This should be the same as the &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; that you include when you &amp;lt;a href=\\\\&amp;quot;#make-a-payment\\\\&amp;quot;&amp;gt;make a payment&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-6067370540&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;TermUrl=https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;48123ef61e1fe482c7dd9663dc32b5ca&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-67&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v67\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;b82fd853a6a647a346bcc2ef72709ec2&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/68\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;3288ae61ae347e95ed8dc0d8d0076cf1&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;ab157ff912c4eaea22a34a75a8369fc4&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-68&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v68\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;a29d80d04b41aad23a1b817f4f33a1c8&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/69\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;a3dd363af558599f3e0b8109d888f39b&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;4f1a5f263d2411cc91b967e17559b66f&quot;:&quot;&lt;h2 id=\\&quot;additional-action\\&quot;&gt;Handle the additional action&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;success&amp;quot;&gt;\\n        Client website or app\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;Some payment methods require additional action from the shopper. Common examples of additional actions include:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Logging in to a bank&#039;s website or app.&lt;\\\/li&gt;\\n&lt;li&gt;Authenticating a payment with 3D Secure 2.&lt;\\\/li&gt;\\n&lt;li&gt;Scanning a QR code.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;Implement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method guide&lt;\\\/a&gt; for it.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;How you handle the action depends on the action type (&lt;code&gt;action.type&lt;\\\/code&gt;):&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Type&lt;\\\/th&gt;\\n&lt;th&gt;&lt;code&gt;action.type&lt;\\\/code&gt; value&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;redirect&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#3d-secure-2-authentication-action\\&quot;&gt;3D Secure 2 authentication action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;threeDS2&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#qr-code-action\\&quot;&gt;QR code action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;qrCode&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#sdk-action\\&quot;&gt;SDK action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;sdk&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#voucher-action\\&quot;&gt;Voucher action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;voucher&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;a href=\\&quot;#await-action\\&quot;&gt;Await action&lt;\\\/a&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;await&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;h3 id=\\&quot;handle-the-redirect\\&quot;&gt;Redirect action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt; &lt;strong&gt;redirect&lt;\\\/strong&gt;, redirect the shopper to another site to complete the payment.&lt;\\\/p&gt;\\n&lt;p&gt;How you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.&lt;\\\/p&gt;\\n\\n&lt;div id=\\&quot;tabcSnh733442\\&quot;&gt;\\n    &lt;div data-component-wrapper=\\&quot;tabs\\&quot;&gt;\\n        &lt;tabs\\n             :id=\\&quot;&amp;quot;33442&amp;quot;\\&quot;             :items=\\&quot;[{&amp;quot;title&amp;quot;:&amp;quot;Payment method redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a payment method redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;: {\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;GET\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;Ab02b4c0!BQ..\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;ideal\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;: \\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121...\\\\\\\\\\\\&amp;quot;\\\\\\\\n   }\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;action.url&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method, where they finish the payment.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example to redirect the shopper&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-shopper-to-the-action-url-3556280280&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;bash\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/redirectIdeal.shtml?brandCode=ideal&amp;amp;amp;currencyCode=EUR&amp;amp;amp;issuerId=1121... \\\\\\\\\\\\\\\\\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice note\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;For security reasons, when displaying the redirect in the app, we recommend that you use &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.apple.com\\\\\\\/documentation\\\\\\\/safariservices\\\\\\\/sfsafariviewcontroller\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;SFSafariViewController&amp;lt;\\\\\\\/a&amp;gt; for iOS or &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.chrome.com\\\\\\\/multidevice\\\\\\\/android\\\\\\\/customtabs\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;Chrome Custom Tabs&amp;lt;\\\\\\\/a&amp;gt; for Android, instead of WebView objects. Also refer to the &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/developer.android.com\\\\\\\/topic\\\\\\\/security\\\\\\\/best-practices#webview\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot; class=\\\\&amp;quot;external-link no-image\\\\&amp;quot;&amp;gt;security best practices&amp;lt;\\\\\\\/a&amp;gt; for WebView.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;When the shopper finishes the payment on the other website, they are returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the HTTP GET method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with a Base64-encoded &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Redirect result appended to the return URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;GET \\\\\\\\\\\\\\\/?shopperOrder=12xy..&amp;amp;amp;&amp;amp;amp;redirectResult=X6XtfGC3%21Y... HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;redirectResult&amp;lt;\\\\\\\/code&amp;gt; value.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div class=\\\\&amp;quot;sc-notice info\\\\&amp;quot;&amp;gt;&amp;lt;div&amp;gt;\\\\n&amp;lt;p&amp;gt;If a shopper completed the payment but failed to return to your client, you will receive the outcome of the payment in a &amp;lt;a href=\\\\&amp;quot;\\\\\\\/development-resources\\\\\\\/webhooks\\\\&amp;quot;&amp;gt;webhook event&amp;lt;\\\\\\\/a&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;payment_method_redirect_0_1&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;},{&amp;quot;title&amp;quot;:&amp;quot;3D Secure 2 redirect&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n    &amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example \\\\\\\/payments response for a 3D Secure 2 redirect&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;json\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;{\\\\\\\\n   \\\\\\\\\\\\&amp;quot;resultCode\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;RedirectShopper\\\\\\\\\\\\&amp;quot;,\\\\\\\\n   \\\\\\\\\\\\&amp;quot;action\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n      \\\\\\\\\\\\&amp;quot;data\\\\\\\\\\\\&amp;quot;:{\\\\\\\\n         \\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;PaReq\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;TermUrl\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      \\\\\\\\\\\\&amp;quot;method\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;POST\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentData\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;paymentMethodType\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;scheme\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;redirect\\\\\\\\\\\\&amp;quot;,\\\\\\\\n      \\\\\\\\\\\\&amp;quot;url\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/test.adyen.com\\\\\\\\\\\\\\\/hpp\\\\\\\\\\\\\\\/3d\\\\\\\\\\\\\\\/validate.shtml\\\\\\\\\\\\&amp;quot;\\\\\\\\n   },\\\\\\\\n   \\\\\\\\\\\\&amp;quot;details\\\\\\\\\\\\&amp;quot;:[\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;MD\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      },\\\\\\\\n      {\\\\\\\\n         \\\\\\\\\\\\&amp;quot;key\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;PaRes\\\\\\\\\\\\&amp;quot;,\\\\\\\\n         \\\\\\\\\\\\&amp;quot;type\\\\\\\\\\\\&amp;quot;:\\\\\\\\\\\\&amp;quot;text\\\\\\\\\\\\&amp;quot;\\\\\\\\n      }\\\\\\\\n   ]\\\\\\\\n}\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;ol&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, get the following from the &amp;lt;code&amp;gt;action&amp;lt;\\\\\\\/code&amp;gt; object:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The URL to redirect the shopper to.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;method&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;The method to use to redirect the shopper: &amp;lt;strong&amp;gt;POST&amp;lt;\\\\\\\/strong&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;data&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;An object with the following data required for authentication: &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/li&amp;gt;&amp;lt;\\\\\\\/ul&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;Redirect the shopper to the &amp;lt;code&amp;gt;url&amp;lt;\\\\\\\/code&amp;gt; with the POST HTTP method, including the following data:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;table&amp;gt;\\\\n&amp;lt;thead&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;th&amp;gt;Parameter&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;th&amp;gt;Description&amp;lt;\\\\\\\/th&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/thead&amp;gt;\\\\n&amp;lt;tbody&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.MD&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;tr&amp;gt;\\\\n&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;td&amp;gt;From the  &amp;lt;a href=\\\\&amp;quot;https:\\\\\\\/\\\\\\\/docs.adyen.com\\\\\\\/api-explorer\\\\\\\/Checkout\\\\\\\/latest\\\\\\\/post\\\\\\\/payments\\\\&amp;quot; class=\\\\&amp;quot;codeLabel  external-link no-image\\\\&amp;quot; target=\\\\&amp;quot;_blank\\\\&amp;quot; rel=\\\\&amp;quot;nofollow noopener noreferrer\\\\&amp;quot;&amp;gt;\\\\\\\/payments&amp;lt;\\\\\\\/a&amp;gt; response, the value from &amp;lt;code&amp;gt;action.data.PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/td&amp;gt;\\\\n&amp;lt;\\\\\\\/tr&amp;gt;\\\\n&amp;lt;\\\\\\\/tbody&amp;gt;\\\\n&amp;lt;\\\\\\\/table&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a redirect to a 3D Secure 2 URL&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;redirect-3d-secure-url-1374613331&amp;#039;\\\\&amp;quot; :code-data=\\\\&amp;quot;[{&amp;amp;quot;language&amp;amp;quot;:&amp;amp;quot;bash&amp;amp;quot;,&amp;amp;quot;tabTitle&amp;amp;quot;:&amp;amp;quot;&amp;amp;quot;,&amp;amp;quot;content&amp;amp;quot;:&amp;amp;quot;curl https:\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\\\\\\\\\/checkoutshopper\\\\\\\\\\\\\\\/threeDS\\\\\\\\\\\\\\\/checkoutRedirect\\\\\\\\\\\\\\\/... \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;PaReq=eNpVUttygjAQ\\\\\\\\\\\\\\\/RXbDyAXBYRZ00HpTH3wUosPfe...&amp;#039; \\\\\\\\\\\\\\\\\\\\\\\\n--data-urlencode &amp;#039;MD=OEVudmZVMUlkWjd0MDNwUWs2bmhSdz09...&amp;#039;&amp;amp;quot;}]\\\\&amp;quot; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper finishes 3D Secure 2 authentication on an issuer website. In the test environment, this is the page: &amp;lt;code&amp;gt;https:\\\\\\\/\\\\\\\/test.adyen.com\\\\\\\/hpp\\\\\\\/3d\\\\\\\/validate.shtml&amp;lt;\\\\\\\/code&amp;gt;, and you perform the authentication using the 3D Secure test credentials:&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;ul&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Username&amp;lt;\\\\\\\/strong&amp;gt;: user&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Password&amp;lt;\\\\\\\/strong&amp;gt;: password&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ul&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;The shopper is returned to your &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; with the same HTTP method. The &amp;lt;code&amp;gt;returnUrl&amp;lt;\\\\\\\/code&amp;gt; is appended with &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt;.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;div data-component-wrapper=\\\\&amp;quot;code-sample\\\\&amp;quot;&amp;gt;\\\\n&amp;lt;code-sample :title=\\\\&amp;quot;&amp;#039;Example of a 3D Secure 2 redirect back to you with MD and PaRes&amp;#039;\\\\&amp;quot; :id=\\\\&amp;quot;&amp;#039;&amp;#039;\\\\&amp;quot; :code-data=&amp;#039;[{\\\\&amp;quot;language\\\\&amp;quot;:\\\\&amp;quot;raw\\\\&amp;quot;,\\\\&amp;quot;tabTitle\\\\&amp;quot;:\\\\&amp;quot;\\\\&amp;quot;,\\\\&amp;quot;content\\\\&amp;quot;:\\\\&amp;quot;POST \\\\\\\\\\\\\\\/ HTTP\\\\\\\\\\\\\\\/1.1\\\\\\\\nHost: www.your-company.example.com\\\\\\\\\\\\\\\/checkout?shopperOrder=12xy..\\\\\\\\nContent-Type: application\\\\\\\\\\\\\\\/x-www-form-urlencoded\\\\\\\\nMD=Ab02b4c0%21BQABAgCW5sxB4e%2F%3D%3D..&amp;amp;amp;PaRes=eNrNV0mTo7gS..\\\\&amp;quot;}]&amp;#039; :enable-copy-link-to-code-block=\\\\&amp;quot;true\\\\&amp;quot; :code-sample-card-size=\\\\&amp;quot;&amp;#039;fullsize&amp;#039;\\\\&amp;quot;&amp;gt;&amp;lt;\\\\\\\/code-sample&amp;gt;\\\\n&amp;lt;\\\\\\\/div&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;URL-decode the &amp;lt;code&amp;gt;MD&amp;lt;\\\\\\\/code&amp;gt; and &amp;lt;code&amp;gt;PaRes&amp;lt;\\\\\\\/code&amp;gt; values.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;li&amp;gt;\\\\n&amp;lt;p&amp;gt;&amp;lt;a href=\\\\&amp;quot;#send-additional-payment-details\\\\&amp;quot;&amp;gt;Send additional payment details&amp;lt;\\\\\\\/a&amp;gt; to finish the payment flow.&amp;lt;\\\\\\\/p&amp;gt;\\\\n&amp;lt;\\\\\\\/li&amp;gt;\\\\n&amp;lt;\\\\\\\/ol&amp;gt;\\\\n&amp;quot;,&amp;quot;altTitle&amp;quot;:null,&amp;quot;oldTabId&amp;quot;:&amp;quot;3d_secure_2_redirect_1_2&amp;quot;,&amp;quot;relation&amp;quot;:&amp;quot;&amp;quot;}]\\&quot;\\n            :should-update-when-url-changes=&#039;false&#039;&gt;\\n        &lt;\\\/tabs&gt;\\n    &lt;\\\/div&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;h3&gt;3D Secure 2 authentication action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;threeDS2Fingerprint&lt;\\\/strong&gt; or &lt;strong&gt;threeDS2Challenge&lt;\\\/strong&gt;, the payment qualifies for 3D Secure 2 and it goes through the &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\\/#authentication-flows\\&quot;&gt;frictionless or the challenge flow&lt;\\\/a&gt;. Use one of &lt;a href=\\&quot;\\\/online-payments\\\/3d-secure\\&quot;&gt;our 3D Secure 2 solutions&lt;\\\/a&gt; to handle the action.&lt;\\\/p&gt;\\n&lt;h3&gt;QR code action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;qrCode&lt;\\\/strong&gt;, the shopper must scan a QR code to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with a QR code action for WeChat Pay desktop&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n\\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpayQR\\\\\\&quot;,\\\\n      \\\\\\&quot;qrCodeData\\\\\\&quot;: \\\\\\&quot;weixin:\\\\\\\/\\\\\\\/wxpay\\\\\\\/bizpayurl?pr=IM7BCOW\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;qrCode\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.qrCodeData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Contains the URL for the QR code.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;qrCodeData&lt;\\\/code&gt; from the &lt;code&gt;action&lt;\\\/code&gt; object. This parameter contains a URL for the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show the QR code to the shopper.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper scans the QR code.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;SDK action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;sdk&lt;\\\/strong&gt;, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example \\\/payments response with an SDK action for WeChat Pay&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;wechatpaySDK\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;sdk\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;sdkData\\\\\\&quot;: {\\\\n         \\\\\\&quot;appid\\\\\\&quot;: \\\\\\&quot;wx3aed7fe146f6a57a\\\\\\&quot;,\\\\n         \\\\\\&quot;noncestr\\\\\\&quot;: \\\\\\&quot;cPY0e83ny4hWyf5O\\\\\\&quot;,\\\\n         \\\\\\&quot;packageValue\\\\\\&quot;: \\\\\\&quot;Sign=WXPay\\\\\\&quot;,\\\\n         \\\\\\&quot;partnerid\\\\\\&quot;: \\\\\\&quot;205287714\\\\\\&quot;,\\\\n         \\\\\\&quot;prepayid\\\\\\&quot;: \\\\\\&quot;wx015678064827111da2e4f0b11005864100\\\\\\&quot;,\\\\n         \\\\\\&quot;sign\\\\\\&quot;: \\\\\\&quot;169FD3F1E193446D90C45573EBDD4020\\\\\\&quot;,\\\\n         \\\\\\&quot;timestamp\\\\\\&quot;: \\\\\\&quot;1573033086\\\\\\&quot;\\\\n      }\\\\n   },\\\\n   \\\\\\&quot;details\\\\\\&quot;: [\\\\n      {\\\\n         \\\\\\&quot;key\\\\\\&quot;: \\\\\\&quot;resultCode\\\\\\&quot;,\\\\n         \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;text\\\\\\&quot;\\\\n      }\\\\n   ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following from the &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;sdkData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The data that you must pass to the SDK.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from the &lt;code&gt;sdkData&lt;\\\/code&gt; object to the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper uses the SDK to finish the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the result from the SDK.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Voucher action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;voucher&lt;\\\/strong&gt;, the shopper must use a voucher to complete the payment.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Voucher action type&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;PresentToShopper\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;expiresAt\\\\\\&quot;: \\\\\\&quot;2021-09-04T19:17:00\\\\\\&quot;,\\\\n      \\\\\\&quot;initialAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;instructionsUrl\\\\\\&quot;: \\\\\\&quot;https:\\\\\\\/\\\\\\\/checkoutshopper-test.adyen.com\\\\\\\/checkoutshopper\\\\\\\/voucherInstructions.shtml?txVariant=doku_mandiri_va\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantName\\\\\\&quot;: \\\\\\&quot;YOUR_SHOP_NAME\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;doku_alfamart\\\\\\&quot;,\\\\n      \\\\\\&quot;reference\\\\\\&quot;: \\\\\\&quot;8520126030105485\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperEmail\\\\\\&quot;: \\\\\\&quot;john.smith@adyen.com\\\\\\&quot;,\\\\n      \\\\\\&quot;shopperName\\\\\\&quot;: \\\\\\&quot;John Smith\\\\\\&quot;,\\\\n      \\\\\\&quot;totalAmount\\\\\\&quot;: {\\\\n         \\\\\\&quot;currency\\\\\\&quot;: \\\\\\&quot;IDR\\\\\\&quot;,\\\\n         \\\\\\&quot;value\\\\\\&quot;: 10000\\\\n      },\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;voucher\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;The data included in the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;expiresAt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The date when the voucher expires.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;initialAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment amount and currency.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantName&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of your shop.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;instructionsUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where you shopper can get additional information and instructions about how to pay.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Show voucher information to the shopper that your shopper uses to pay outside of your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;h3&gt;Await action&lt;\\\/h3&gt;\\n&lt;p&gt;When the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response includes &lt;code&gt;action.type&lt;\\\/code&gt;: &lt;strong&gt;await&lt;\\\/strong&gt;, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example of a \\\/payments response with an await action for a one-time PayTo payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Pending\\\\\\&quot;,\\\\n   \\\\\\&quot;action\\\\\\&quot;: {\\\\n      \\\\\\&quot;paymentData\\\\\\&quot;: \\\\\\&quot;Ab02b4c0!BQAB..\\\\\\&quot;,\\\\n      \\\\\\&quot;paymentMethodType\\\\\\&quot;: \\\\\\&quot;payto\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;await\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response, get the following:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;action.paymentData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Additional payment data.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;The shopper finishes the additional action for the payment.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;a href=\\&quot;#send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/a&gt; to finish the payment flow.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;236ee43ba37e5d284f4c2d3885b07fe8&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-69&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v69\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;b174e01ee8db2d61b498336fc129620b&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/70\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest()\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .countryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  .channel(PaymentMethodsRequest.ChannelEnum.WEB)\\\\n  .shopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.3.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentMethodsRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentMethodsRequest = new PaymentMethodsRequest();\\\\n$paymentMethodsRequest\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setCountryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  -&amp;gt;setChannel(\\\\&amp;quot;Web\\\\&amp;quot;)\\\\n  -&amp;gt;setShopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .NET API Library v32.2.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest\\\\n{\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode = \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  Channel = PaymentMethodsRequest.ChannelEnum.Web,\\\\n  ShopperLocale = \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.1.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentMethodsRequest := checkout.PaymentMethodsRequest{\\\\n  Amount: &amp;amp;amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode: common.PtrString(\\\\&amp;quot;NL\\\\&amp;quot;),\\\\n  Channel: common.PtrString(\\\\&amp;quot;Web\\\\&amp;quot;),\\\\n  ShopperLocale: common.PtrString(\\\\&amp;quot;nl-NL\\\\&amp;quot;),\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v11.0.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Web&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.Web,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Credit Card\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;68dfb3ae27ddaf47a82bfc8f706456ff&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-70&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v70\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8e0d2ffeaae92a7b41df5d1dedde2003&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-70&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v70\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;870349294bcfb296564ec9737d0cc5aa&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/71\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v40.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest()\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .countryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  .channel(PaymentMethodsRequest.ChannelEnum.WEB)\\\\n  .shopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentMethodsResponse response = service.paymentMethods(paymentMethodsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.3.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentMethodsRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$paymentMethodsRequest = new PaymentMethodsRequest();\\\\n$paymentMethodsRequest\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setCountryCode(\\\\&amp;quot;NL\\\\&amp;quot;)\\\\n  -&amp;gt;setChannel(\\\\&amp;quot;Web\\\\&amp;quot;)\\\\n  -&amp;gt;setShopperLocale(\\\\&amp;quot;nl-NL\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentMethods($paymentMethodsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .NET API Library v32.2.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nPaymentMethodsRequest paymentMethodsRequest = new PaymentMethodsRequest\\\\n{\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode = \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  Channel = PaymentMethodsRequest.ChannelEnum.Web,\\\\n  ShopperLocale = \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentMethods(paymentMethodsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentMethodsRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  channel: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.1.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\npaymentMethodsRequest := checkout.PaymentMethodsRequest{\\\\n  Amount: &amp;amp;amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  CountryCode: common.PtrString(\\\\&amp;quot;NL\\\\&amp;quot;),\\\\n  Channel: common.PtrString(\\\\&amp;quot;Web\\\\&amp;quot;),\\\\n  ShopperLocale: common.PtrString(\\\\&amp;quot;nl-NL\\\\&amp;quot;),\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentMethodsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentMethodsRequest(paymentMethodsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentMethods(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v11.0.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Web&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.Web,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Cards\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;c60029ff5916117a06695ddc18cb292e&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/71\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentRequest = {\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: {\\\\n    type: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  amount: {\\\\n    currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    value: 1000\\\\n  },\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/71\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;786c1dafef7066cbc356a23eb0c207ef&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-71&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v71\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.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, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentDetailsResponse response = service.paymentsDetails(paymentDetailsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentsDetails($paymentDetailsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentsDetails(paymentDetailsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;js&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (JavaScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nconst { Client, CheckoutAPI } = require(&#039;@adyen\\\\\\\/api-library&#039;);\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst paymentDetailsRequest = {\\\\n  details: {\\\\n    redirectResult: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsDetailsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentDetailsRequest(paymentDetailsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentsDetails(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :details =&amp;gt; {\\\\n    :redirectResult =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cyI6IlkifQ==&#039;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;,&quot;f0466956e11aa80ed97962b8f56d02b8&quot;:&quot;&lt;h2 id=\\&quot;get-available-payment-methods\\&quot;&gt;Get available payment methods&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;When the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a\\u00a0POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/72\\\/post\\\/paymentMethods\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/paymentMethods&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;channel&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;&lt;strong&gt;Web&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;countryCode&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The shopper&#039;s country\\\/region. &lt;br&gt;Format: the two-letter &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_3166-1_alpha-2\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;ISO-3166-1 alpha-2&lt;\\\/a&gt; country code. Exception: &lt;strong&gt;QZ&lt;\\\/strong&gt; (Kosovo).&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;shopperLocale&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Language and country code. This is used to translate the payment methods names in the response. &lt;br&gt; Default value: &lt;strong&gt;en-US&lt;\\\/strong&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;p&gt;The information that you include is used to filter the list of available payment methods.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example for a shopper in the Netherlands and a payment amount of 10 EUR&#039;\\&quot; :id=\\&quot;&#039;payment-methods-request-web-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/paymentMethods \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;countryCode\\\\&amp;quot;: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;channel\\\\&amp;quot;: \\\\&amp;quot;Web\\\\&amp;quot;,\\\\n  \\\\&amp;quot;shopperLocale\\\\&amp;quot;: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v11.0.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :countryCode =&amp;gt; &#039;NL&#039;,\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :channel =&amp;gt; &#039;Web&#039;,\\\\n  :shopperLocale =&amp;gt; &#039;nl-NL&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payment_methods(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v30.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst paymentMethodsRequest: Types.checkout.PaymentMethodsRequest = {\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  countryCode: \\\\&amp;quot;NL\\\\&amp;quot;,\\\\n  channel: Types.checkout.PaymentMethodsRequest.ChannelEnum.Web,\\\\n  shopperLocale: \\\\&amp;quot;nl-NL\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentMethods(paymentMethodsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes the list of available payment methods, in the &lt;code&gt;paymentMethods&lt;\\\/code&gt; object. The payment methods are ordered by popularity in the shopper&#039;s country. For each payment method, the response contains:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;name&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The name of the payment method that you can show in your payment form.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The unique payment method code. You must include this when you &lt;a href=\\&quot;#make-a-payment\\&quot;&gt;make a payment&lt;\\\/a&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response with available payment methods&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;paymentMethods\\\\\\&quot;:[\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Cards\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;: \\\\\\&quot;scheme\\\\\\&quot;\\\\n    },\\\\n    {\\\\n      \\\\\\&quot;name\\\\\\&quot;:\\\\\\&quot;SEPA Direct Debit\\\\\\&quot;,\\\\n      \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;sepadirectdebit\\\\\\&quot;\\\\n    }\\\\n  ]\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the list of available payment methods and the required input fields for each payment method to your client.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;07d2ecb5ed3e5b4ce941e6fc8d8e41fe&quot;:&quot;&lt;h2 id=\\&quot;make-a-payment\\&quot;&gt;Make a payment&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;After the shopper selects the &lt;strong&gt;Pay&lt;\\\/strong&gt; button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Pass the data from your client to your server.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;From your server, make a &lt;strong&gt;POST&lt;\\\/strong&gt;  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; request including the following parameters:&lt;\\\/p&gt;\\n&lt;table&gt;\\n&lt;thead&gt;\\n&lt;tr&gt;\\n&lt;th&gt;Parameter name&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&lt;\\\/th&gt;\\n&lt;th&gt;Description&lt;\\\/th&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/thead&gt;\\n&lt;tbody&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;merchantAccount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your merchant account name.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;amount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;An object with the following parameters: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;currency&lt;\\\/code&gt;: The three-character &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;ISO currency code&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;value&lt;\\\/code&gt;: The value of the payment in &lt;a href=\\&quot;\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;reference&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;Your unique reference for this payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;paymentMethod.type&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The payment method type. From the &lt;a href=\\&quot;#get-available-payment-methods\\&quot;&gt;&lt;code&gt;\\\/paymentMethods&lt;\\\/code&gt; response&lt;\\\/a&gt;, this is the value in &lt;code&gt;paymentMethod.type&lt;\\\/code&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;returnUrl&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td&gt;The URL where the shopper should return to after a redirection. &lt;br&gt;&lt;br&gt; Format: &lt;ul&gt;&lt;li&gt;Include the protocol: &lt;code&gt;http:\\\/\\\/&lt;\\\/code&gt; or &lt;code&gt;https:\\\/\\\/&lt;\\\/code&gt;.&lt;\\\/li&gt;&lt;li&gt;Maximum 1024 characters.&lt;\\\/li&gt;&lt;li&gt;If it includes non-ASCII characters, such as spaces or special letters, &lt;a href=\\&quot;https:\\\/\\\/www.w3schools.com\\\/html\\\/html_urlencode.asp\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;URL encode&lt;\\\/a&gt; it.&lt;\\\/li&gt;&lt;li&gt;You can include your own additional query parameters, such as a shopper ID or order reference number.&lt;\\\/li&gt;&lt;\\\/ul&gt; &lt;br&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; The URL must not include personally identifiable information (PII), for example name or email address. &lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td&gt;&lt;code&gt;applicationInfo&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;\\\/td&gt;\\n&lt;td&gt;If you are a &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/partners\\\/application-information#partnership-type\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;technology partner, service partner, or system integrator&lt;\\\/a&gt;, send information about the application, so that we can offer you more support.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt;\\n&lt;p&gt;For the following cases, you must include additional parameters in your request:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;Integrating some payment methods. For more information, go to &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;payment method integration guides&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;Using our risk management features. For more information, go to &lt;a href=\\&quot;\\\/risk-management\\\/configure-your-risk-profile\\\/risk-field-reference\\&quot;&gt;data quality and risk field reference&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/create-tokens\\&quot;&gt;Creating a token&lt;\\\/a&gt; to store the shopper&#039;s payment details.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;a href=\\&quot;\\\/online-payments\\\/tokenization\\\/make-token-payments\\&quot;&gt;Using a token&lt;\\\/a&gt; to make a recurring payment with stored payment details.\\n&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example request to make a payment for EUR 10 with encrypted card details&#039;\\&quot; :id=\\&quot;&#039;payments-request-web-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;:\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;:{\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;:\\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;:1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;:\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;:\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.0\\\\nimport com.adyen.Client;\\\\nimport com.adyen.enums.Environment;\\\\nimport com.adyen.model.checkout.*;\\\\nimport com.adyen.model.RequestOptions;\\\\nimport com.adyen.service.checkout.*;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nAmount amount = new Amount()\\\\n  .currency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  .value(1000L);\\\\n\\\\nCardDetails cardDetails = new CardDetails()\\\\n  .encryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  .encryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  .encryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  .encryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  .type(CardDetails.TypeEnum.SCHEME);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest()\\\\n  .reference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  .amount(amount)\\\\n  .merchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  .paymentMethod(new CheckoutPaymentMethod(cardDetails))\\\\n  .returnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;);\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentResponse response = service.payments(paymentRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\Amount;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\CheckoutPaymentMethod;\\\\nuse Adyen\\\\\\\\Model\\\\\\\\Checkout\\\\\\\\PaymentRequest;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$amount = new Amount();\\\\n$amount\\\\n  -&amp;gt;setCurrency(\\\\&amp;quot;EUR\\\\&amp;quot;)\\\\n  -&amp;gt;setValue(1000);\\\\n\\\\n$checkoutPaymentMethod = new CheckoutPaymentMethod();\\\\n$checkoutPaymentMethod\\\\n  -&amp;gt;setEncryptedCardNumber(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedSecurityCode(\\\\&amp;quot;test_737\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryYear(\\\\&amp;quot;test_2030\\\\&amp;quot;)\\\\n  -&amp;gt;setEncryptedExpiryMonth(\\\\&amp;quot;test_03\\\\&amp;quot;)\\\\n  -&amp;gt;setType(\\\\&amp;quot;scheme\\\\&amp;quot;);\\\\n\\\\n$paymentRequest = new PaymentRequest();\\\\n$paymentRequest\\\\n  -&amp;gt;setReference(\\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;)\\\\n  -&amp;gt;setAmount($amount)\\\\n  -&amp;gt;setMerchantAccount(\\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;)\\\\n  -&amp;gt;setPaymentMethod($checkoutPaymentMethod)\\\\n  -&amp;gt;setReturnUrl(\\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;);\\\\n\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;payments($paymentRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;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 = \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value = 1000\\\\n};\\\\n\\\\nCardDetails cardDetails = new CardDetails\\\\n{\\\\n  EncryptedCardNumber = \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  EncryptedSecurityCode = \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  EncryptedExpiryYear = \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  EncryptedExpiryMonth = \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  Type = CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest\\\\n{\\\\n  Reference = \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount = amount,\\\\n  MerchantAccount = \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod = new CheckoutPaymentMethod(cardDetails),\\\\n  ReturnUrl = \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.Payments(paymentRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\namount := checkout.Amount{\\\\n  Currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  Value: 1000,\\\\n}\\\\n\\\\ncardDetails := checkout.CardDetails{\\\\n  EncryptedCardNumber: common.PtrString(\\\\&amp;quot;test_4111111111111111\\\\&amp;quot;),\\\\n  EncryptedSecurityCode: common.PtrString(\\\\&amp;quot;test_737\\\\&amp;quot;),\\\\n  EncryptedExpiryYear: common.PtrString(\\\\&amp;quot;test_2030\\\\&amp;quot;),\\\\n  EncryptedExpiryMonth: common.PtrString(\\\\&amp;quot;test_03\\\\&amp;quot;),\\\\n  Type: common.PtrString(\\\\&amp;quot;scheme\\\\&amp;quot;),\\\\n}\\\\n\\\\npaymentRequest := checkout.PaymentRequest{\\\\n  Reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  Amount: amount,\\\\n  MerchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  PaymentMethod: checkout.CardDetailsAsCheckoutPaymentMethod(&amp;amp;cardDetails),\\\\n  ReturnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;,\\\\n}\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentRequest(paymentRequest)\\\\nres, httpRes, err := service.PaymentsApi.Payments(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;merchantAccount\\\\&amp;quot;: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  \\\\&amp;quot;paymentMethod\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;type\\\\&amp;quot;: \\\\&amp;quot;scheme\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedCardNumber\\\\&amp;quot;: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryMonth\\\\&amp;quot;: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedExpiryYear\\\\&amp;quot;: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n    \\\\&amp;quot;encryptedSecurityCode\\\\&amp;quot;: \\\\&amp;quot;test_737\\\\&amp;quot;\\\\n  },\\\\n  \\\\&amp;quot;amount\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;currency\\\\&amp;quot;: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n    \\\\&amp;quot;value\\\\&amp;quot;: 1000\\\\n  },\\\\n  \\\\&amp;quot;reference\\\\&amp;quot;: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  \\\\&amp;quot;returnUrl\\\\&amp;quot;: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :merchantAccount =&amp;gt; &#039;ADYEN_MERCHANT_ACCOUNT&#039;,\\\\n  :paymentMethod =&amp;gt; {\\\\n    :type =&amp;gt; &#039;scheme&#039;,\\\\n    :encryptedCardNumber =&amp;gt; &#039;test_4111111111111111&#039;,\\\\n    :encryptedExpiryMonth =&amp;gt; &#039;test_03&#039;,\\\\n    :encryptedExpiryYear =&amp;gt; &#039;test_2030&#039;,\\\\n    :encryptedSecurityCode =&amp;gt; &#039;test_737&#039;\\\\n  },\\\\n  :amount =&amp;gt; {\\\\n    :currency =&amp;gt; &#039;EUR&#039;,\\\\n    :value =&amp;gt; 1000\\\\n  },\\\\n  :reference =&amp;gt; &#039;YOUR_ORDER_NUMBER&#039;,\\\\n  :returnUrl =&amp;gt; &#039;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..&#039;\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\nconst amount: Types.checkout.Amount = {\\\\n  currency: \\\\&amp;quot;EUR\\\\&amp;quot;,\\\\n  value: 1000\\\\n};\\\\n\\\\nconst cardDetails: Types.checkout.CardDetails = {\\\\n  encryptedCardNumber: \\\\&amp;quot;test_4111111111111111\\\\&amp;quot;,\\\\n  encryptedSecurityCode: \\\\&amp;quot;test_737\\\\&amp;quot;,\\\\n  encryptedExpiryYear: \\\\&amp;quot;test_2030\\\\&amp;quot;,\\\\n  encryptedExpiryMonth: \\\\&amp;quot;test_03\\\\&amp;quot;,\\\\n  type: Types.checkout.CardDetails.TypeEnum.Scheme\\\\n};\\\\n\\\\nconst paymentRequest: Types.checkout.PaymentRequest = {\\\\n  reference: \\\\&amp;quot;YOUR_ORDER_NUMBER\\\\&amp;quot;,\\\\n  amount: amount,\\\\n  merchantAccount: \\\\&amp;quot;ADYEN_MERCHANT_ACCOUNT\\\\&amp;quot;,\\\\n  paymentMethod: cardDetails,\\\\n  returnUrl: \\\\&amp;quot;https:\\\\\\\/\\\\\\\/your-company.example.com\\\\\\\/checkout?shopperOrder=12xy..\\\\&amp;quot;\\\\n};\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.payments(paymentRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&lt;p&gt;&lt;a id=\\&quot;response\\&quot;&gt;&lt;\\\/a&gt;&lt;\\\/p&gt;\\n&lt;ol start=\\&quot;3\\&quot;&gt;\\n&lt;li&gt;\\n&lt;p&gt;&lt;span id=\\&quot;handle-action-object\\&quot;&gt;Your&lt;\\\/span&gt; next step depends on if the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments&lt;\\\/a&gt; response contains an &lt;code&gt;action&lt;\\\/code&gt; object:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;If the response has no &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#get-the-payment-outcome\\&quot;&gt;get the payment outcome&lt;\\\/a&gt;.&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;If the response contains an &lt;code&gt;action&lt;\\\/code&gt; object, &lt;a href=\\&quot;#additional-action\\&quot;&gt;handle the additional action&lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Example response containing an action object for 3D Secure 2 authentication&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n  \\\\\\&quot;resultCode\\\\\\&quot; : \\\\\\&quot;IdentifyShopper\\\\\\&quot;,\\\\n  \\\\\\&quot;action\\\\\\&quot; : {\\\\n    \\\\\\&quot;token\\\\\\&quot; : \\\\\\&quot;eyJkaXJl...\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentMethodType\\\\\\&quot; : \\\\\\&quot;scheme\\\\\\&quot;,\\\\n    \\\\\\&quot;paymentData\\\\\\&quot; : \\\\\\&quot;Ab02b4c0...\\\\\\&quot;,\\\\n    \\\\\\&quot;type\\\\\\&quot; : \\\\\\&quot;threeDS2\\\\\\&quot;,\\\\n    \\\\\\&quot;authorisationToken\\\\\\&quot; : \\\\\\&quot;BQABAQ...\\\\\\&quot;,\\\\n    \\\\\\&quot;subtype\\\\\\&quot; : \\\\\\&quot;fingerprint\\\\\\&quot;\\\\n  }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;&quot;,&quot;8f73244559657311010bcfd0a3711a82&quot;:&quot;&lt;h2 id=\\&quot;send-additional-payment-details\\&quot;&gt;Send additional payment details&lt;\\\/h2&gt;\\n&lt;div data-component-wrapper=\\&quot;tag\\&quot;&gt;\\n    &lt;tag :variant=&amp;quot;info&amp;quot;&gt;\\n        Payment server\\n    &lt;\\\/tag&gt;\\n&lt;\\\/div&gt;\\n\\n&lt;p&gt;If you &lt;a href=\\&quot;#additional-action\\&quot;&gt;handled an additional action&lt;\\\/a&gt;, you must send additional payment details.&lt;\\\/p&gt;\\n&lt;div class=\\&quot;notices green\\&quot;&gt;\\n&lt;p&gt;&lt;strong&gt;For redirects&lt;\\\/strong&gt;: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding &lt;a href=\\&quot;#update-your-order-management-system\\&quot;&gt;webhook message&lt;\\\/a&gt; for the outcome of the payment.&lt;\\\/p&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;From your server, make a POST  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Checkout\\\/latest\\\/post\\\/payments\\\/details\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;\\\/payments\\\/details&lt;\\\/a&gt; request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the &lt;strong&gt;API-only&lt;\\\/strong&gt; &lt;a href=\\&quot;\\\/payment-methods\\&quot;&gt;page for the individual payment method &lt;\\\/a&gt;.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example request to send details from a redirect&#039;\\&quot; :id=\\&quot;&#039;payments-details-request-72&#039;\\&quot; :code-data=\\&quot;[{&amp;quot;language&amp;quot;:&amp;quot;bash&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;curl&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;curl https:\\\\\\\/\\\\\\\/checkout-test.adyen.com\\\\\\\/v72\\\\\\\/payments\\\\\\\/details \\\\\\\\\\\\n-H &#039;x-api-key: ADYEN_API_KEY&#039; \\\\\\\\\\\\n-H &#039;content-type: application\\\\\\\/json&#039; \\\\\\\\\\\\n-d &#039;{\\\\n     \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n       \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n   }\\\\n}&#039;&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;java&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Java&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Java API Library v39.3.0\\\\nimport com.adyen.Client;\\\\nimport com.adyen.enums.Environment;\\\\nimport com.adyen.model.checkout.*;\\\\nimport com.adyen.model.RequestOptions;\\\\nimport com.adyen.service.checkout.*;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nClient client = new Client(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;, Environment.TEST);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nPaymentsApi service = new PaymentsApi(client);\\\\nPaymentDetailsResponse response = service.paymentsDetails(paymentDetailsRequest, new RequestOptions().idempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;));&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;php&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;PHP&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;&amp;lt;?php\\\\n\\\\\\\/\\\\\\\/ Adyen PHP API Library v28.2.0\\\\nuse Adyen\\\\\\\\Client;\\\\nuse Adyen\\\\\\\\Environment;\\\\nuse Adyen\\\\\\\\Service\\\\\\\\Checkout\\\\\\\\PaymentsApi;\\\\n\\\\n$client = new Client();\\\\n$client-&amp;gt;setXApiKey(\\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;);\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\n$client-&amp;gt;setEnvironment(Environment::TEST);\\\\n\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n$requestOptions[&#039;idempotencyKey&#039;] = &#039;UUID&#039;;\\\\n\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\n$service = new PaymentsApi($client);\\\\n$response = $service-&amp;gt;paymentsDetails($paymentDetailsRequest, $requestOptions);&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;cs&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;C#&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen .net API Library v32.1.1\\\\nusing Adyen;\\\\nusing Environment = Adyen.Model.Environment;\\\\nusing Adyen.Model;\\\\nusing Adyen.Model.Checkout;\\\\nusing Adyen.Service.Checkout;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nvar config = new Config()\\\\n{\\\\n    XApiKey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n    Environment = Environment.Test\\\\n};\\\\nvar client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nvar service = new PaymentsService(client);\\\\nvar response = service.PaymentsDetails(paymentDetailsRequest, requestOptions: new RequestOptions { IdempotencyKey = \\\\&amp;quot;UUID\\\\&amp;quot;});&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;go&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Go&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Go API Library v21.0.0\\\\nimport (\\\\n  \\\\&amp;quot;context\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/common\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/adyen\\\\&amp;quot;\\\\n  \\\\&amp;quot;github.com\\\\\\\/adyen\\\\\\\/adyen-go-api-library\\\\\\\/v21\\\\\\\/src\\\\\\\/checkout\\\\&amp;quot;\\\\n)\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nclient := adyen.NewClient(&amp;amp;common.Config{\\\\n  ApiKey:      \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  Environment: common.TestEnv,\\\\n})\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nservice := client.Checkout()\\\\nreq := service.PaymentsApi.PaymentsDetailsInput().IdempotencyKey(\\\\&amp;quot;UUID\\\\&amp;quot;).PaymentDetailsRequest(paymentDetailsRequest)\\\\nres, httpRes, err := service.PaymentsApi.PaymentsDetails(context.Background(), req)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;py&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Python&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Python API Library v13.6.0\\\\nimport Adyen\\\\n\\\\nadyen = Adyen.Adyen()\\\\nadyen.client.xapikey = \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.client.platform = \\\\&amp;quot;test\\\\&amp;quot; # The environment to use library in.\\\\n\\\\n# Create the request object(s)\\\\njson_request = {\\\\n  \\\\&amp;quot;details\\\\&amp;quot;: {\\\\n    \\\\&amp;quot;redirectResult\\\\&amp;quot;: \\\\&amp;quot;eyJ0cmFuc1N0YXR1cyI6IlkifQ==\\\\&amp;quot;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request=json_request, idempotency_key=\\\\&amp;quot;UUID\\\\&amp;quot;)&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;rb&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;Ruby&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;# Adyen Ruby API Library v10.4.0\\\\nrequire \\\\&amp;quot;adyen-ruby-api-library\\\\&amp;quot;\\\\n\\\\nadyen = Adyen::Client.new\\\\nadyen.api_key = &#039;ADYEN_API_KEY&#039;\\\\n# For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nadyen.env = :test # Set to \\\\&amp;quot;live\\\\&amp;quot; for live environment\\\\n\\\\n# Create the request object(s)\\\\nrequest_body = {\\\\n  :details =&amp;gt; {\\\\n    :redirectResult =&amp;gt; &#039;eyJ0cmFuc1N0YXR1cyI6IlkifQ==&#039;\\\\n  }\\\\n}\\\\n\\\\n# Send the request\\\\nresult = adyen.checkout.payments_api.payments_details(request_body, headers: { &#039;Idempotency-Key&#039; =&amp;gt; &#039;UUID&#039; })&amp;quot;},{&amp;quot;language&amp;quot;:&amp;quot;ts&amp;quot;,&amp;quot;tabTitle&amp;quot;:&amp;quot;NodeJS (TypeScript)&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;\\\\\\\/\\\\\\\/ Adyen Node API Library v29.0.0\\\\nimport { Client, CheckoutAPI, Types } from \\\\&amp;quot;@adyen\\\\\\\/api-library\\\\&amp;quot;;\\\\n\\\\n\\\\\\\/\\\\\\\/ For the LIVE environment, also include your liveEndpointUrlPrefix.\\\\nconst config = new Config({\\\\n  apiKey: \\\\&amp;quot;ADYEN_API_KEY\\\\&amp;quot;,\\\\n  environment: EnvironmentEnum.TEST\\\\n});\\\\n\\\\nconst client = new Client(config);\\\\n\\\\n\\\\\\\/\\\\\\\/ Create the request object(s)\\\\n\\\\\\\/\\\\\\\/ Send the request\\\\nconst checkoutAPI = new CheckoutAPI(client);\\\\nconst response = checkoutAPI.PaymentsApi.paymentsDetails(paymentDetailsRequest, { idempotencyKey: \\\\&amp;quot;UUID\\\\&amp;quot; });&amp;quot;}]\\&quot; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;p&gt;The response includes information about the current payment status.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a successful payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;NC6HT9CRT65ZGN82\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Authorised\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Example response for a refused payment&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;pspReference\\\\\\&quot;: \\\\\\&quot;KHQC5N7G84BLNK43\\\\\\&quot;,\\\\n    \\\\\\&quot;refusalReason\\\\\\&quot;: \\\\\\&quot;Not enough balance\\\\\\&quot;,\\\\n    \\\\\\&quot;resultCode\\\\\\&quot;: \\\\\\&quot;Refused\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;&quot;}}}}}}\"\n        query-param-tab=\"platform\"\n        query-param-box=\"integration\"\n        query-param-dropdown=\"version\">\n    <\/in-page-filtering>\n<\/div>\n<div class=\"version_docs__image-placeholder u-display-none\">\n                        <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/web\/dropin\/visual\/web-v6-drop-in.png\"\/>\n                    <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/web\/github\/github-mark.png\"\/>\n                    <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/web\/components\/visual\/web-v6-components.png\"\/>\n                    <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/web\/github\/github-mark.png\"\/>\n                                <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/ios\/dropin\/visual\/ios-dropin.svg\"\/>\n                    <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/ios\/github\/github-mark.png\"\/>\n                    <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/ios\/components\/visual\/ios-components.svg\"\/>\n                    <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/ios\/github\/github-mark.png\"\/>\n                                <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/android\/dropin\/visual\/android-dropin.svg\"\/>\n                    <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/android\/github\/github-mark.png\"\/>\n                    <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/android\/components\/visual\/android-components.svg\"\/>\n                    <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/android\/github\/github-mark.png\"\/>\n                                <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/react-native\/dropin\/visual\/react-dropin.svg\"\/>\n                    <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/react-native\/github\/github-mark.png\"\/>\n                    <img src=\"\/user\/pages\/filters\/advanced-flow-integration\/react-native\/components\/visual\/react-components.svg\"\/>\n                    <img src=\"\/user\/pages\/filters\/advanced-flow-integration\/react-native\/github\/github-mark.png\"\/>\n                                <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/flutter\/dropin\/visual\/flutter-dropin.svg\"\/>\n                    <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/flutter\/github\/github-mark.png\"\/>\n                    <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/flutter\/components\/visual\/flutter-components.svg\"\/>\n                    <img src=\"\/user\/pages\/filters\/sessions-flow-integration\/flutter\/github\/github-mark.png\"\/>\n            <\/div>\n","url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow","articleFields":{"feedback_component":true,"description":"Accept payments using the Advanced flow.","filters_component":true,"filters_config_folder":"advanced-flow-integration","dynamic_minitoc":true,"dynamic_minitoc_context":".in-page-filtering--content","search_tags":["adyen android","adyen ios","adyen web","adyen react native","adyen flutter","adyen sdk"]},"algolia":[{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow","title":"Advanced flow integration guide","content":"Web Drop-in\nRender a list of available payment methods anywhere on your website.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nLow development time to integrate payment methods\nUI styling customization for the list of payment methods\nAdding payment methods to the list requires no extra development time\n3D Secure 2 support built in\n\nDemo\nView live demoDrop-in is our pre-built UI solution for accepting payments on your  website. Drop-in shows all payment methods as a list, in the same block. This integration requires you to make API requests to  \/paymentMethods,  \/payments, and  \/payments\/details endpoints.\nAdding new payment methods usually doesn't require more development work. Drop-in supports cards, wallets, and most local payment methods.\nIntroducing Web v6\nImprovements\nThe Web v6 library introduces the following improvements:\n\nReduced bundle size through tree shaking\nEnhanced design\nEnhanced Typescript developer experience\nBetter alignment of express payment methods\nAdded support for 6 localizations\nSupport for Apple Pay Order tracking\nImprove AVS checks for Google Pay and Apple Pay\n\nTo upgrade your existing integration, see Upgrade to Adyen Web v6Requirements\n\nCheck out our Node.js + Express tutorialFollow our tutorial to integrate Drop-in with Node.js and Express.\n\nBefore you begin to integrate, make sure you have followed the Get started with Adyen guide to:\n\nGet an overview of the steps needed to accept live payments.\nCreate your test account.\n\nAfter you have created your test account:\n\nGet your API key.\nGet your client key.\nSet up webhooks to know the payment outcome.\n\n\nTo make sure that your 3D Secure integration works on Chrome, your cookies need to have the SameSite attribute. For more information, refer to Chrome SameSite Cookie policy.\nHow it works\nFor a Drop-in integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details.\n\nYour client  website: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  website.\nYour webhook server: receives webhooks that include the outcome of each payment.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client website\n    Go to the integration steps for your client  website.\n        Webhook server\n    Go to the integration steps for your webhook server.\n\nThe parts of your integration work together to complete the payment flow:\n\n  \n\n\nFrom your server, submit a request to get a list of payment methods available to the shopper.\nCreate an instance of Drop-in on your payments form.\nFrom your server, submit a payment request with data you receive from Drop-in.\nDetermine from the response if you need to perform additional actions on your client website.\nFrom your server, submit additional payment details with data you receive from Drop-in.\nShow the payment result to the shopper.\n\nWhen you have completed the integration, proceed to test your integration.Install an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.\nFrom your server, make a  \/paymentMethods request, specifying:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe\u00a0currency\u00a0and\u00a0value\u00a0of the payment, in minor units. This is used to filter the list of available payment methods to your shopper.\n\n\nchannel\n\nThe platform of the shopper's device; use Web. This is used to filter the list of available payment methods to your shopper.\n\n\ncountryCode\n\nThe shopper's country\/region. This is used to filter the list of available payment methods to your shopper. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nBy default, the shopperlocale is set to en-US. To change the language, set this to the shopper's language and country code. You also need to set the same locale within your Drop-in configuration.\n\n\n\nThe following example shows how to get the available payment methods for a shopper in the Netherlands, for a payment of EUR&nbsp;10:\n\n    \n\nThe response includes the list of available paymentMethods:\n\n    \n\nPass the response to your client website. You'll use this in the next step to show which payment methods are available for the shopper.\nCustom list of payment methods\nWhen you make a  \/paymentMethods request, the response includes all payment methods that you enabled in your Customer Area that are available for the transaction.\nTo exclude payment methods from the available list of available payment methods for a specific transaction, include one of the following parameters when making your request:\n\n allowedPaymentMethods&#58; Drop-in renders only the payment methods that you specify.\n blockedPaymentMethods&#58; Drop-in doesn't render payment methods that you specify.\nAdd Drop-in to your payments form\n\n    \n        Client website\n    \n\n\nNext, use Drop-in to show the available payment methods, and to collect payment details from your shopper.\nImport using the Adyen Web npm package, or embed the Adyen Web script and stylesheet into your HTML file:\n\n\n    \n        \n        \n    \n\n\n&emsp;&emsp;&nbsp;You can add your own styling by overriding the rules in this CSS file.\nAfter you have imported the Adyen Web library, do the following:\n\n\nCreate a Document Object Model (DOM) element on your checkout page and put it where you want Drop-in to render on the page.\n\n\n\n\nIf you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.\n\n\n\n\n\n\nCreate a global configuration object with the following parameters and events:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\npaymentMethodsResponse\n\nThe full \/paymentMethods response returned when you get available payment methods.\n\n\nclientKey\n\nA public key linked to your API credential, used for client-side authentication.  Web Drop-in versions before 3.10.1 use originKey instead. Find out how to migrate from using originKey to clientKey.\n\n\nlocale\n\nThe shopper's locale. This is used to set the language rendered in the UI. For a list of supported locales, see\u00a0Language and localization.\n\n\ncountryCode\n\nThe shopper's country\/region. This is used to filter the list of available payment methods to your shopper. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nenvironment\n\nUse test. When you are ready to accept live payments, change the value to one of our live environments.\u00a0\n\n\nsecondaryAmount\n\nShows the payment amount in an additional currency on the Pay button. You must do the currency conversion and set the amount.  This object has properties:  currency: The three-character ISO currency code. value: The amount of the transaction, in minor units. currencyDisplay: Sets the currency formatting. Default: symbol. \n\n\nshowPayButton\n\nShows or hides a Pay Button for each payment method. Defaults to true.  When set to false, you must override it in \n  paymentMethodsConfiguration\n.  The Pay button triggers the onSubmit event when payment details are valid. If you want to disable the button and then trigger the submit flow on your own, set this to false and call the .submit() method from your own button implementation.  PayPal Smart Payment Buttons doesn't support the .submit() method.\n\n\namount\n\nAmount to be displayed on the Pay Button. It expects an object with the value and currency properties. For example, { value: 1000, currency: 'USD' }.\n\n\n\n\n\n\nEvent name\nRequired\nDescription\n\n\n\n\nonSubmit(state, dropin, actions)\n\nCreate an event handler for this event, which is called when the shopper selects the Pay button, and the details are valid. This applies if the showPayButton configuration parameter is set to true.  Makes a POST  \/payments request.  You must call actions.resolve(), passing resultCode, action, and order objects (if available) from the  \/payments response, even if the payment is unsuccessful.  If the  \/payments request from your server fails, or if an unexpected error occurs, call actions.reject().\n\n\nonAdditionalDetails(state, dropin, actions)\n\nCreate an event handler, called when a payment method requires more details, for example for native 3D Secure 2, or native QR code payment methods. Makes a POST  \/payments\/details request.  If the  \/payments\/details request from your server is successful, you must call actions.resolve(), passing resultCode, action, and order objects (if available) from the API response. You must call it even if the payment is unsuccessful.   If the  \/payments\/details request from your server fails, or if an unexpected error occurs, call actions.reject.\n\n\nonPaymentCompleted(result, component)\n\nCreate an event handler, called when the payment is completed.\n\n\nonPaymentFailed(result, component)\n\nCreate an event handler, called when the payment failed. A failed payment has result code Cancelled, Error or Refused.\n\n\nonError(error)\n\nCreate an event handler, called when an error occurs in Drop-in.\n\n\nonChange(state, dropin)\n\nCreate an event handler, called when the shopper provides the required payment details.\n\n\nonActionHandled\n\nCreate an event handler, called when an action, for example a QR code or 3D Secure 2 authentication screen, is shown to the shopper. The following action.type values trigger this callback:  threeDS qr await  Returns data that contains:  componentType: The type of component that shows the action to the shopper. actionDescription: A description of the action shown to the shopper. \n\n\n\n\n\n\n\n\nCreate an instance of AdyenCheckout, passing the global configuration object you created:\n\n\n\n\n\nCreate and mount an instance of Dropin, passing the instance of AdyenCheckout you created. You can add optional Drop-in configuration your instance of Dropin. How you create it depends on if you import resources for all payment methods or individual payment methods.\n\n\n    \n        \n        \n    \n\n\nWhen the shopper selects the Pay button, Drop-in calls the onSubmit event, which contains a state.data. These are the shopper details that you need to make the payment.\n\n\nPass the state.data to your server.\n\n\n\n\nOptional Drop-in configuration\nYou can add the following configuration parameters to the Dropin configuration:\n\n\n\nParameter name\nDescription\n\n\n\n\nopenFirstPaymentMethod\nWhen enabled, Drop-in opens the first payment method automatically on page load. Defaults to true.\n\n\nopenFirstStoredPaymentMethod\nWhen enabled, Drop-in opens the payment method with stored card details on page load. This option takes precedence over openFirstPaymentMethod. Defaults to true.\n\n\nopenPaymentMethod.type\nAutomatically selects the specified payment method when Drop-in renders. Set the payment method type that you want to be automatically selected as the value.\n\n\nshowStoredPaymentMethods\nShows or hides payment methods with stored card details. Defaults to true.\n\n\nshowRemovePaymentMethodButton\nAllows the shopper to remove a stored payment method. Defaults to false.  If using this prop, you must also implement the onDisableStoredPaymentMethod callback.\n\n\nshowPaymentMethods\nShows or hides regular (not stored) payment methods. Set to false  if you only want to show payment methods with stored card details. Defaults to true.\n\n\npaymentMethodsConfiguration\nConfiguration for individual payment methods. The payment method guides have configuration options specific to each payment method.  If you include this in the configuration on your instance of DropIn, it overrides global payment method configuration on your instance of AdyenCheckout.\n\n\nredirectFromTopWhenInIframe\nIf your Drop-in is inside of an iframe element, set to true if you want redirects to be performed on the top-level window.  We recommend that you do not put Component in an iframe.\n\n\ninstantPaymentTypes\nMoves payment methods to the top of the list of available payment methods. This is available for Apple Pay and Google Pay.\n\n\ndisableFinalAnimation\nWhen enabled, disables the final animation after a shopper completes the payment (whether successful or failed). This lets you implement your own Defaults to false.\n\n\nshowRadioButton\nWhen enabled, payment methods in the Drop-in have a radio button. Defaults to false.\n\n\nEvents\nUse the following events to include additional logic on your checkout page:\n\n\n\nEvent name\nDescription\n\n\n\n\nonReady()\nCalled when Drop-in is initialized and ready for use.\n\n\nonSelect(component)\nCalled when the shopper selects a payment method.\n\n\nonDisableStoredPaymentMethod(storedPaymentMethodId, resolve, reject)\nCalled when a shopper removes a stored payment method. To remove the selected payment method, make a DELETE \/storedPaymentMethod request including the storedPaymentMethodId. Then call either resolve() or reject(), depending on the  \/storedPaymentMethods\/{storedPaymentMethodId} response.\n\n\nMethods\nDrop-in supports the following methods:\n\n\n\nMethod name\nDescription\n\n\n\n\nmount(selector)\nMounts the Drop-in into the DOM returned by the selector.  The selector must be either a valid CSS selector string or an HTMLElement reference.\n\n\nunmount()\nUnmounts the Drop-in from the DOM. We recommend to unmount in case the payment amount changes after the initial mount.\n\n\ncloseActivePaymentMethod()\nCloses a selected payment method, for example if you want to reset the Drop-in.\n\n\nOptional: Update the payment amount\nIf the amount changes after you mount Drop-in (for example: the shopper adds or removes items from their cart), you can update the payment amount without re-initializing AdyenCheckout.\nFrom your instance of AdyenCheckout, call the update method, passing the new amount.\n\n    \nMake a payment\n\n    \n        Payment server\n    \n\n\nAfter the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.\n\n\nPass the data from onSubmit to your server\n\n\nFrom your server, make a POST  \/payments request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe currency of the payment and its value in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod\n\nThe complete state.data.paymentMethod object from the onSubmit event from your client app. It includes the payment method details and other required information.\n\n\npaymentMethod.sdkData\n\nThe object that includes information collected by Drop-in to track the user's payment journey, including information like the checkout attempt identifier. This is required to use the Checkout dashboard that lets you analyze your checkout performance.\n\n\nreturnUrl\n\nURL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: http:\/\/ or https:\/\/. You can also include your own additional query parameters, for example, shopper ID or order reference number.    If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value.   The URL must not include personally identifiable information (PII), for example name or email address. \n\n\nriskData\n\nDevice characteristics and other data that we use to detect fraudulent payment activity, and mitigate fraud.\n\n\n\n  applicationInfo\n\n\nIf you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to Building Adyen solutions.\n\n\nshopperEmail\n\nThe shopper's email address. Strongly recommended because this field is used in a number of risk checks, and for 3D Secure.\n\n\nshopperIP\n\nThe shopper's IP address. Strongly recommended because this field is used in a number of risk checks.\n\n\nshopperReference\n\nYour reference to uniquely identify this shopper. Minimum length: three characters. Do not include personally identifiable information, for example name or email address. Strongly recommended because this field is used in a number of risk checks.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, go to data quality and risk field reference.\nNative 3D Secure 2 authentication.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\nUsing the Adyen Uplift Personalize module and accessing the Checkout dashboard.\n\n\n\n\n\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\nHandle the additional action\n\n    \n        Client website\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\n\nImplement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding payment method guide for it.\n\nTo handle the additional action:\n\n\nPass the action object from your server to the onSubmit actions.resolve() function.\n\n\nDrop-in performs additional actions depending on the value of action.type.\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\n\n\nRedirect action\nWhen the  \/payments response includes action.type redirect, Drop-in redirects your shopper to another website to complete the payment.\n\n\nWhen the shopper finishes their payment on the other website, they are returned to your returnUrl with an HTTP GET request. The returnUrl is appended with a Base64-encoded redirectResult.\n\n\n\n\nIf the shopper fails to return to your website, you do not get the redirectResult. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\nTo process the result:\n\nGet the redirectResult appended to your return URL. You do not need to decode it.\nPass the redirectResult to your server.\n\nSend additional payment details to complete the payment flow.\n\n\n\n\n\n3D Secure 2 authentication action\nWhen the  \/payments response includes action.type: threeDS2, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.\n\nDrop-in handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.\nDrop-in calls onAddtionalDetails.\nPass the state.data from onAdditionalDetails to your server.\nSend additional payment details to complete the payment flow.\n\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must scan a QR code to complete the payment.\n\nDrop-in shows the QR code to the shopper.\nThe shopper scans the QR code to complete the payment.\nDrop-in calls onAddtionalDetails.\nPass the state.data from onAdditionalDetails to your server.\nSend additional payment details to complete the payment flow.\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.\n\nDrop-in shows a different UI in an overlay.\nThe shopper uses the UI overlay to complete the payment.\nDrop-in calls onAddtionalDetails.\nPass the state.data from onAdditionalDetails to your server.\nSend additional payment details to complete the payment flow.\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\nDrop-in shows the voucher to the shopper.\nThe shopper uses the voucher to pay outside of your website.\nYou get the payment outcome.\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.\n\nDrop-in shows the instructions for the additional action to complete the payment.\nThe shopper does the additional action.\nDrop-in calls onAddtionalDetails or onError, depending on the result of the additional action.\nPass the state.data from onAdditionalDetails or onError to your server.\nSend additional payment details to complete the payment flow.\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details.\n\nFor redirects: if the shopper fails to return to your website, you do not get additional payment details to send. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\nPass additional payment details to your server, depending on the action you handled:\n\nIf you handled a redirect: pass the redirectResult.\nIf you handled a non-redirect additional action: pass the complete state.data object from the onAdditionalDetails event.\n\n\n\nFrom your server, make a POST  \/payments\/details request including the redirectResult or the full state.data object, depending on the action you handled.\n\n\n\n\n\nPass the  \/payments\/details response from your server to your client app.\n\n\n\n\n\n\n\nGet the payment outcome\nAfter Drop-in finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client website\n    \n\n\nUse the \n  resultCode\n from the onPaymentCompleted or onPaymentFailed event to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \n\nError handling\nIn case you encounter errors in your integration, refer to the following:\n\nAPI error codes: If you receive a non-HTTP 200 response, use the errorCode to troubleshoot and modify your request.\nPayment refusals: If you receive an HTTP 200 response with an Error or Refused resultCode, check the refusal reason and, if possible, modify your request.\n\nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account. Review the process to start accepting payments on Get started with Adyen.\nAssess your PCI DSS compliance by submitting the Self-Assessment Questionnaire-A.\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nLoad Drop-in from one of our live environments and set the environment to match your live endpoints:\n\n\n\nEndpoint region\nValue\n\n\n\n\nEurope (EU) live\nlive\n\n\nUnited States (US) live\nlive-us\n\n\nAustralia (AU) live\nlive-au\n\n\nAsia Pacific &amp; Southeast (APSE) live\nlive-apse\n\n\nIndia (IN) live\nlive-in\n\n\n\n\nSee also\n\n\n                    Tokenization\n                \n                    3D Secure\n                \n                    PCI DSS compliance guide\n                \n                    Adyen Uplift requirements and recommendations\n                \nNext steps\n\nrequiredModify paymentsFind out how to cancel, refund, or capture a payment using our API.Add payment methodsLearn about payment methods and how to add them to your account.TokenizationSave shopper payment details for later payments.3D Secure authenticationComply with regulations such as PSD2 SCA in Europe.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["adyen android","adyen ios","adyen web","adyen react native","adyen flutter","adyen sdk"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=Web&integration=Drop-in","title":"Web Drop-in","content":"Web Drop-in\nRender a list of available payment methods anywhere on your website.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nLow development time to integrate payment methods\nUI styling customization for the list of payment methods\nAdding payment methods to the list requires no extra development time\n3D Secure 2 support built in\n\nDemo\nView live demoDrop-in is our pre-built UI solution for accepting payments on your  website. Drop-in shows all payment methods as a list, in the same block. This integration requires you to make API requests to  \/paymentMethods,  \/payments, and  \/payments\/details endpoints.\nAdding new payment methods usually doesn't require more development work. Drop-in supports cards, wallets, and most local payment methods.\nIntroducing Web v6\nImprovements\nThe Web v6 library introduces the following improvements:\n\nReduced bundle size through tree shaking\nEnhanced design\nEnhanced Typescript developer experience\nBetter alignment of express payment methods\nAdded support for 6 localizations\nSupport for Apple Pay Order tracking\nImprove AVS checks for Google Pay and Apple Pay\n\nTo upgrade your existing integration, see Upgrade to Adyen Web v6Requirements\n\nCheck out our Node.js + Express tutorialFollow our tutorial to integrate Drop-in with Node.js and Express.\n\nBefore you begin to integrate, make sure you have followed the Get started with Adyen guide to:\n\nGet an overview of the steps needed to accept live payments.\nCreate your test account.\n\nAfter you have created your test account:\n\nGet your API key.\nGet your client key.\nSet up webhooks to know the payment outcome.\n\n\nTo make sure that your 3D Secure integration works on Chrome, your cookies need to have the SameSite attribute. For more information, refer to Chrome SameSite Cookie policy.\nHow it works\nFor a Drop-in integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details.\n\nYour client  website: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  website.\nYour webhook server: receives webhooks that include the outcome of each payment.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client website\n    Go to the integration steps for your client  website.\n        Webhook server\n    Go to the integration steps for your webhook server.\n\nThe parts of your integration work together to complete the payment flow:\n\n  \n\n\nFrom your server, submit a request to get a list of payment methods available to the shopper.\nCreate an instance of Drop-in on your payments form.\nFrom your server, submit a payment request with data you receive from Drop-in.\nDetermine from the response if you need to perform additional actions on your client website.\nFrom your server, submit additional payment details with data you receive from Drop-in.\nShow the payment result to the shopper.\n\nWhen you have completed the integration, proceed to test your integration.Install an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.\nFrom your server, make a  \/paymentMethods request, specifying:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe\u00a0currency\u00a0and\u00a0value\u00a0of the payment, in minor units. This is used to filter the list of available payment methods to your shopper.\n\n\nchannel\n\nThe platform of the shopper's device; use Web. This is used to filter the list of available payment methods to your shopper.\n\n\ncountryCode\n\nThe shopper's country\/region. This is used to filter the list of available payment methods to your shopper. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nBy default, the shopperlocale is set to en-US. To change the language, set this to the shopper's language and country code. You also need to set the same locale within your Drop-in configuration.\n\n\n\nThe following example shows how to get the available payment methods for a shopper in the Netherlands, for a payment of EUR&nbsp;10:\n\n    \n\nThe response includes the list of available paymentMethods:\n\n    \n\nPass the response to your client website. You'll use this in the next step to show which payment methods are available for the shopper.\nCustom list of payment methods\nWhen you make a  \/paymentMethods request, the response includes all payment methods that you enabled in your Customer Area that are available for the transaction.\nTo exclude payment methods from the available list of available payment methods for a specific transaction, include one of the following parameters when making your request:\n\n allowedPaymentMethods&#58; Drop-in renders only the payment methods that you specify.\n blockedPaymentMethods&#58; Drop-in doesn't render payment methods that you specify.\nAdd Drop-in to your payments form\n\n    \n        Client website\n    \n\n\nNext, use Drop-in to show the available payment methods, and to collect payment details from your shopper.\nImport using the Adyen Web npm package, or embed the Adyen Web script and stylesheet into your HTML file:\n\n\n    \n        \n        \n    \n\n\n&emsp;&emsp;&nbsp;You can add your own styling by overriding the rules in this CSS file.\nAfter you have imported the Adyen Web library, do the following:\n\n\nCreate a Document Object Model (DOM) element on your checkout page and put it where you want Drop-in to render on the page.\n\n\n\n\nIf you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.\n\n\n\n\n\n\nCreate a global configuration object with the following parameters and events:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\npaymentMethodsResponse\n\nThe full \/paymentMethods response returned when you get available payment methods.\n\n\nclientKey\n\nA public key linked to your API credential, used for client-side authentication.  Web Drop-in versions before 3.10.1 use originKey instead. Find out how to migrate from using originKey to clientKey.\n\n\nlocale\n\nThe shopper's locale. This is used to set the language rendered in the UI. For a list of supported locales, see\u00a0Language and localization.\n\n\ncountryCode\n\nThe shopper's country\/region. This is used to filter the list of available payment methods to your shopper. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nenvironment\n\nUse test. When you are ready to accept live payments, change the value to one of our live environments.\u00a0\n\n\nsecondaryAmount\n\nShows the payment amount in an additional currency on the Pay button. You must do the currency conversion and set the amount.  This object has properties:  currency: The three-character ISO currency code. value: The amount of the transaction, in minor units. currencyDisplay: Sets the currency formatting. Default: symbol. \n\n\nshowPayButton\n\nShows or hides a Pay Button for each payment method. Defaults to true.  When set to false, you must override it in \n  paymentMethodsConfiguration\n.  The Pay button triggers the onSubmit event when payment details are valid. If you want to disable the button and then trigger the submit flow on your own, set this to false and call the .submit() method from your own button implementation.  PayPal Smart Payment Buttons doesn't support the .submit() method.\n\n\namount\n\nAmount to be displayed on the Pay Button. It expects an object with the value and currency properties. For example, { value: 1000, currency: 'USD' }.\n\n\n\n\n\n\nEvent name\nRequired\nDescription\n\n\n\n\nonSubmit(state, dropin, actions)\n\nCreate an event handler for this event, which is called when the shopper selects the Pay button, and the details are valid. This applies if the showPayButton configuration parameter is set to true.  Makes a POST  \/payments request.  You must call actions.resolve(), passing resultCode, action, and order objects (if available) from the  \/payments response, even if the payment is unsuccessful.  If the  \/payments request from your server fails, or if an unexpected error occurs, call actions.reject().\n\n\nonAdditionalDetails(state, dropin, actions)\n\nCreate an event handler, called when a payment method requires more details, for example for native 3D Secure 2, or native QR code payment methods. Makes a POST  \/payments\/details request.  If the  \/payments\/details request from your server is successful, you must call actions.resolve(), passing resultCode, action, and order objects (if available) from the API response. You must call it even if the payment is unsuccessful.   If the  \/payments\/details request from your server fails, or if an unexpected error occurs, call actions.reject.\n\n\nonPaymentCompleted(result, component)\n\nCreate an event handler, called when the payment is completed.\n\n\nonPaymentFailed(result, component)\n\nCreate an event handler, called when the payment failed. A failed payment has result code Cancelled, Error or Refused.\n\n\nonError(error)\n\nCreate an event handler, called when an error occurs in Drop-in.\n\n\nonChange(state, dropin)\n\nCreate an event handler, called when the shopper provides the required payment details.\n\n\nonActionHandled\n\nCreate an event handler, called when an action, for example a QR code or 3D Secure 2 authentication screen, is shown to the shopper. The following action.type values trigger this callback:  threeDS qr await  Returns data that contains:  componentType: The type of component that shows the action to the shopper. actionDescription: A description of the action shown to the shopper. \n\n\n\n\n\n\n\n\nCreate an instance of AdyenCheckout, passing the global configuration object you created:\n\n\n\n\n\nCreate and mount an instance of Dropin, passing the instance of AdyenCheckout you created. You can add optional Drop-in configuration your instance of Dropin. How you create it depends on if you import resources for all payment methods or individual payment methods.\n\n\n    \n        \n        \n    \n\n\nWhen the shopper selects the Pay button, Drop-in calls the onSubmit event, which contains a state.data. These are the shopper details that you need to make the payment.\n\n\nPass the state.data to your server.\n\n\n\n\nOptional Drop-in configuration\nYou can add the following configuration parameters to the Dropin configuration:\n\n\n\nParameter name\nDescription\n\n\n\n\nopenFirstPaymentMethod\nWhen enabled, Drop-in opens the first payment method automatically on page load. Defaults to true.\n\n\nopenFirstStoredPaymentMethod\nWhen enabled, Drop-in opens the payment method with stored card details on page load. This option takes precedence over openFirstPaymentMethod. Defaults to true.\n\n\nopenPaymentMethod.type\nAutomatically selects the specified payment method when Drop-in renders. Set the payment method type that you want to be automatically selected as the value.\n\n\nshowStoredPaymentMethods\nShows or hides payment methods with stored card details. Defaults to true.\n\n\nshowRemovePaymentMethodButton\nAllows the shopper to remove a stored payment method. Defaults to false.  If using this prop, you must also implement the onDisableStoredPaymentMethod callback.\n\n\nshowPaymentMethods\nShows or hides regular (not stored) payment methods. Set to false  if you only want to show payment methods with stored card details. Defaults to true.\n\n\npaymentMethodsConfiguration\nConfiguration for individual payment methods. The payment method guides have configuration options specific to each payment method.  If you include this in the configuration on your instance of DropIn, it overrides global payment method configuration on your instance of AdyenCheckout.\n\n\nredirectFromTopWhenInIframe\nIf your Drop-in is inside of an iframe element, set to true if you want redirects to be performed on the top-level window.  We recommend that you do not put Component in an iframe.\n\n\ninstantPaymentTypes\nMoves payment methods to the top of the list of available payment methods. This is available for Apple Pay and Google Pay.\n\n\ndisableFinalAnimation\nWhen enabled, disables the final animation after a shopper completes the payment (whether successful or failed). This lets you implement your own Defaults to false.\n\n\nshowRadioButton\nWhen enabled, payment methods in the Drop-in have a radio button. Defaults to false.\n\n\nEvents\nUse the following events to include additional logic on your checkout page:\n\n\n\nEvent name\nDescription\n\n\n\n\nonReady()\nCalled when Drop-in is initialized and ready for use.\n\n\nonSelect(component)\nCalled when the shopper selects a payment method.\n\n\nonDisableStoredPaymentMethod(storedPaymentMethodId, resolve, reject)\nCalled when a shopper removes a stored payment method. To remove the selected payment method, make a DELETE \/storedPaymentMethod request including the storedPaymentMethodId. Then call either resolve() or reject(), depending on the  \/storedPaymentMethods\/{storedPaymentMethodId} response.\n\n\nMethods\nDrop-in supports the following methods:\n\n\n\nMethod name\nDescription\n\n\n\n\nmount(selector)\nMounts the Drop-in into the DOM returned by the selector.  The selector must be either a valid CSS selector string or an HTMLElement reference.\n\n\nunmount()\nUnmounts the Drop-in from the DOM. We recommend to unmount in case the payment amount changes after the initial mount.\n\n\ncloseActivePaymentMethod()\nCloses a selected payment method, for example if you want to reset the Drop-in.\n\n\nOptional: Update the payment amount\nIf the amount changes after you mount Drop-in (for example: the shopper adds or removes items from their cart), you can update the payment amount without re-initializing AdyenCheckout.\nFrom your instance of AdyenCheckout, call the update method, passing the new amount.\n\n    \nMake a payment\n\n    \n        Payment server\n    \n\n\nAfter the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.\n\n\nPass the data from onSubmit to your server\n\n\nFrom your server, make a POST  \/payments request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe currency of the payment and its value in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod\n\nThe complete state.data.paymentMethod object from the onSubmit event from your client app. It includes the payment method details and other required information.\n\n\npaymentMethod.sdkData\n\nThe object that includes information collected by Drop-in to track the user's payment journey, including information like the checkout attempt identifier. This is required to use the Checkout dashboard that lets you analyze your checkout performance.\n\n\nreturnUrl\n\nURL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: http:\/\/ or https:\/\/. You can also include your own additional query parameters, for example, shopper ID or order reference number.    If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value.   The URL must not include personally identifiable information (PII), for example name or email address. \n\n\nriskData\n\nDevice characteristics and other data that we use to detect fraudulent payment activity, and mitigate fraud.\n\n\n\n  applicationInfo\n\n\nIf you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to Building Adyen solutions.\n\n\nshopperEmail\n\nThe shopper's email address. Strongly recommended because this field is used in a number of risk checks, and for 3D Secure.\n\n\nshopperIP\n\nThe shopper's IP address. Strongly recommended because this field is used in a number of risk checks.\n\n\nshopperReference\n\nYour reference to uniquely identify this shopper. Minimum length: three characters. Do not include personally identifiable information, for example name or email address. Strongly recommended because this field is used in a number of risk checks.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, go to data quality and risk field reference.\nNative 3D Secure 2 authentication.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\nUsing the Adyen Uplift Personalize module and accessing the Checkout dashboard.\n\n\n\n\n\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\nHandle the additional action\n\n    \n        Client website\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\n\nImplement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding payment method guide for it.\n\nTo handle the additional action:\n\n\nPass the action object from your server to the onSubmit actions.resolve() function.\n\n\nDrop-in performs additional actions depending on the value of action.type.\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\n\n\nRedirect action\nWhen the  \/payments response includes action.type redirect, Drop-in redirects your shopper to another website to complete the payment.\n\n\nWhen the shopper finishes their payment on the other website, they are returned to your returnUrl with an HTTP GET request. The returnUrl is appended with a Base64-encoded redirectResult.\n\n\n\n\nIf the shopper fails to return to your website, you do not get the redirectResult. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\nTo process the result:\n\nGet the redirectResult appended to your return URL. You do not need to decode it.\nPass the redirectResult to your server.\n\nSend additional payment details to complete the payment flow.\n\n\n\n\n\n3D Secure 2 authentication action\nWhen the  \/payments response includes action.type: threeDS2, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.\n\nDrop-in handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.\nDrop-in calls onAddtionalDetails.\nPass the state.data from onAdditionalDetails to your server.\nSend additional payment details to complete the payment flow.\n\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must scan a QR code to complete the payment.\n\nDrop-in shows the QR code to the shopper.\nThe shopper scans the QR code to complete the payment.\nDrop-in calls onAddtionalDetails.\nPass the state.data from onAdditionalDetails to your server.\nSend additional payment details to complete the payment flow.\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.\n\nDrop-in shows a different UI in an overlay.\nThe shopper uses the UI overlay to complete the payment.\nDrop-in calls onAddtionalDetails.\nPass the state.data from onAdditionalDetails to your server.\nSend additional payment details to complete the payment flow.\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\nDrop-in shows the voucher to the shopper.\nThe shopper uses the voucher to pay outside of your website.\nYou get the payment outcome.\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.\n\nDrop-in shows the instructions for the additional action to complete the payment.\nThe shopper does the additional action.\nDrop-in calls onAddtionalDetails or onError, depending on the result of the additional action.\nPass the state.data from onAdditionalDetails or onError to your server.\nSend additional payment details to complete the payment flow.\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details.\n\nFor redirects: if the shopper fails to return to your website, you do not get additional payment details to send. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\nPass additional payment details to your server, depending on the action you handled:\n\nIf you handled a redirect: pass the redirectResult.\nIf you handled a non-redirect additional action: pass the complete state.data object from the onAdditionalDetails event.\n\n\n\nFrom your server, make a POST  \/payments\/details request including the redirectResult or the full state.data object, depending on the action you handled.\n\n\n\n\n\nPass the  \/payments\/details response from your server to your client app.\n\n\n\n\n\n\n\nGet the payment outcome\nAfter Drop-in finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client website\n    \n\n\nUse the \n  resultCode\n from the onPaymentCompleted or onPaymentFailed event to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \n\nError handling\nIn case you encounter errors in your integration, refer to the following:\n\nAPI error codes: If you receive a non-HTTP 200 response, use the errorCode to troubleshoot and modify your request.\nPayment refusals: If you receive an HTTP 200 response with an Error or Refused resultCode, check the refusal reason and, if possible, modify your request.\n\nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account. Review the process to start accepting payments on Get started with Adyen.\nAssess your PCI DSS compliance by submitting the Self-Assessment Questionnaire-A.\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nLoad Drop-in from one of our live environments and set the environment to match your live endpoints:\n\n\n\nEndpoint region\nValue\n\n\n\n\nEurope (EU) live\nlive\n\n\nUnited States (US) live\nlive-us\n\n\nAustralia (AU) live\nlive-au\n\n\nAsia Pacific &amp; Southeast (APSE) live\nlive-apse\n\n\nIndia (IN) live\nlive-in\n\n\n\n\nSee also\n\n\n                    Tokenization\n                \n                    3D Secure\n                \n                    PCI DSS compliance guide\n                \n                    Adyen Uplift requirements and recommendations\n                \nNext steps\n\nrequiredModify paymentsFind out how to cancel, refund, or capture a payment using our API.Add payment methodsLearn about payment methods and how to add them to your account.TokenizationSave shopper payment details for later payments.3D Secure authenticationComply with regulations such as PSD2 SCA in Europe.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["Web","Drop-in"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=Web&integration=Components","title":"Web Components","content":"Web Components\nRender individual payment methods anywhere on your website.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nLow development time to integrate each payment method component\nUI styling customization for each payment method\nFlexibility to add payment method components with configuration for each\n3D Secure 2 support using the 3D Secure 2 Component\n\nDemo\nView live demoComponents is our pre-built UI solution for accepting payments on your website. Each component renders a payment method which you can place anywhere on your website. This integration requires you to make API requests to  \/paymentMethods,  \/payments, and  \/payments\/details endpoints.\nAdding new payment methods usually doesn't require more development work. Components supports cards, wallets, and most local payment methods.\nIntroducing Web v6\nImprovements\nThe Web v6 library introduces the following improvements:\n\nReduced bundle size through tree shaking\nEnhanced design\nEnhanced Typescript developer experience\nBetter alignment of express payment methods\nAdded support for 6 localizations\nSupport for Apple Pay Order tracking\nImprove AVS checks for Google Pay and Apple Pay\n\nTo upgrade your existing integration, see Upgrade to Adyen Web v6Requirements\n\nCheck out our Node.js + Express tutorialFollow our tutorial to integrate Drop-in with Node.js and Express.\n\nBefore you begin to integrate, make sure you have followed the Get started with Adyen guide to:\n\nGet an overview of the steps needed to accept live payments.\nCreate your test account.\n\nAfter you have created your test account:\n\nGet your API key.\nGet your client key.\nSet up webhooks to know the payment outcome.\n\n\nTo make sure that your 3D Secure integration works on Chrome, your cookies need to have the SameSite attribute. For more information, refer to Chrome SameSite Cookie policy.\nHow it works\nFor a Components integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details. \n\nYour client website: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client website. \nYour webhook server: receives webhooks that include the outcome of each payment.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client website\n    Go to the integration steps for your client website.\n        Webhook server\n    Go to the integration steps for your webhook server.\n\nThe parts of your integration work together to complete the payment flow:\n\n  \n\n\nFrom your server, submit a request to get a list of payment methods available to the shopper.\nAdd the specific payment method Component to your payments form.\nFrom your server, submit a payment request with the data returned by the Component.\nDetermine from the response if you need to perform additional actions on your client website, such as to redirect the shopper.\nFrom your server, submit additional payment details.\nGet the payment outcome.\nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.\nFrom your server, make a  \/paymentMethods request, specifying:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe\u00a0currency\u00a0and\u00a0value\u00a0of the payment, in minor units. This is used to filter the list of available payment methods to your shopper.\n\n\nchannel\n\nThe platform of the shopper's device; use Web. This is used to filter the list of available payment methods to your shopper.\n\n\ncountryCode\n\nThe shopper's country\/region. This is used to filter the list of available payment methods to your shopper. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nBy default, the shopperlocale is set to en-US. To change the language, set this to the shopper's language and country code. You also need to set the same locale within your Drop-in configuration.\n\n\n\nThe following example shows how to get the available payment methods for a shopper in the Netherlands, for a payment of EUR&nbsp;10:\n\n    \n\nThe response includes the list of available paymentMethods:\n\n    \n\nPass the response to your client website. You'll use this in the next step to show which payment methods are available for the shopper.\nCustom list of payment methods\nWhen you make a  \/paymentMethods request, the response includes all payment methods that you enabled in your Customer Area that are available for the transaction.\nTo exclude payment methods from the available list of available payment methods for a specific transaction, include one of the following parameters when making your request:\n\n allowedPaymentMethods&#58; Drop-in renders only the payment methods that you specify.\n blockedPaymentMethods&#58; Drop-in doesn't render payment methods that you specify.\nAdd Components to your payments form\n\n    \n        Client website\n    \n\n\nNext, use the Component to render the payment method, and collect the required payment details from your shopper.\nImport using the Adyen Web npm package, or embed the Adyen Web script and stylesheet into your HTML file:\n\n\n    \n        \n        \n    \n\n\n&emsp;&emsp;&nbsp;You can add your own styling by overriding the rules in this CSS file.\nAfter you have imported the Adyen Web library, do the following:\n\n\nCreate a DOM element on your checkout page,\u00a0placing it where you want the payment method form to be rendered.\n\n\n\n\nIf you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.\n\n\n\n Create a configuration object with the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\npaymentMethodsResponse\n\nThe full \/paymentMethods response returned when you get available payment methods.\n\n\nclientKey\n\nA public key linked to your API credential, used for client-side authentication.\n\n\nlocale\n\nThe shopper's locale. This is used to set the language rendered in the UI. For a list of supported locales, see\u00a0Localization.\n\n\ncountryCode\n\nThe shopper's country\/region. This is used to filter the list of available payment methods to your shopper. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nenvironment\n\nUse test. When you are ready to accept live payments, change the value to one of our live environments.\u00a0\n\n\nonSubmit(state, component, actions)\n\nCreate an event handler for this event, which is called when the shopper selects the Pay button, and the details are valid. This applies if the showPayButton configuration parameter is set to true.  Makes a POST  \/payments request.   You must call actions.resolve(), passing resultCode, action, and order objects (if available) from the  \/payments response, even when the payment is unsuccessful.  If the  \/payments request from your server fails, or if an unexpected error occurs, call actions.reject().\n\n\nonAdditionalDetails(state, component, actions)\n\nCreate an event handler for this event, used for native 3D Secure 2, and for native QR code payment methods. In the example below, the handler is named handleOnAdditionalDetails. Makes a POST  \/payments\/details request.\n\n\nonPaymentCompleted(result, component)\n\nCreate an event handler, called when the payment is completed.\n\n\nonPaymentFailed(result, component)\n\nCreate an event handler, called when the payment failed. A failed payment has result code Cancelled, Error or Refused.\n\n\nonError(error)\n\nCreate an event handler, called when an error occurs in the Component.\n\n\nonChange(state, component)\n\nCreate an event handler, called when the shopper provides the required payment details.\n\n\nsecondaryAmount\n\nShows the payment amount in an additional currency on the Pay button. You must do the currency conversion and set the amount.  This object has properties:  currency: The three-character ISO currency code. value: The amount of the transaction, in minor units. currencyDisplay: Sets the currency formatting. Default: symbol. \n\n\nshowPayButton\n\nShows or hides a Pay Button for each payment method. Defaults to true.  When set to false, you must override it in \n  paymentMethodsConfiguration\n.  The Pay button triggers the onSubmit event when payment details are valid. If you want to disable the button and then trigger the submit flow on your own, set this to false and call the .submit() method from your own button implementation.  PayPal Smart Payment Buttons doesn't support the .submit() method.\n\n\namount\n\nThe currency and value of the transaction.\n\n\nonActionHandled\n\nCreate an event handler, called when an action, for example a QR code or 3D Secure 2 authentication screen, is shown to the shopper. The following action.type values trigger this callback:  threeDS qr await  Returns data that contains:  componentType: The type of component that shows the action to the shopper. actionDescription: A description of the action shown to the shopper. \n\n\n\n\n\n\n\n\nUse the configuration object to create an instance of AdyenCheckout.\n\n\n\n\n\nCreate and mount an instance of the payment method Component. \n\nSome payment method Components require additional configuration. For more information, refer to our payment method integration guides.\n\nFor example, to mount the Card Component using its component name, card:\n\n\n\nYou can also include optional Card Component configuration.\nWhen the shopper enters the payment details and selects the Pay button, the Component calls the onSubmit event. If state.isValid is true, use the data in state.data to make the payment.\n\n\nPass the state.data to your server.\n\n\n\n\nMethods\nAll Components support the following methods:\n\n\n\nMethod name\nDescription\n\n\n\n\nmount(selector)\nMounts the Component into the DOM returned by the selector.  The selector must be either a valid CSS selector string or an HTMLElement reference.\n\n\nunmount()\nUnmounts the Component from the DOM. We recommend to unmount in case the payment amount changes after the initial mount.\n\n\nOptional: Update the payment amount\nIf the amount changes after you mount the Component (for example: the shopper adds or removes items from their cart), you can update the payment amount without re-initializing AdyenCheckout.\nFrom your instance of AdyenCheckout, call the update method, passing the new amount.\n\n    \nMake a payment\n\n    \n        Payment server\n    \n\n\nAfter the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.\n\n\nPass the data from onSubmit to your server\n\n\nFrom your server, make a POST  \/payments request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe currency of the payment and its value in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod\n\nThe complete state.data.paymentMethod object from the onSubmit event from your client app. It includes the payment method details and other required information.\n\n\npaymentMethod.sdkData\n\nThe object that includes information collected by the Component to track the user's payment journey, including information like the checkout attempt identifier. This is required to use the Checkout dashboard that lets you analyze your checkout performance.\n\n\nreturnUrl\n\nURL to where the shopper should be taken back to after a redirection. The URL can contain a maximum of 1024 characters and should include the protocol: http:\/\/ or https:\/\/. You can also include your own additional query parameters, for example, shopper ID or order reference number.    If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value.   The URL must not include personally identifiable information (PII), for example name or email address. \n\n\nriskData\n\nDevice characteristics and other data that we use to detect fraudulent payment activity, and mitigate fraud.\n\n\n\n  applicationInfo\n\n\nIf you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to Building Adyen solutions.\n\n\nshopperEmail\n\nThe shopper's email address. Strongly recommended because this field is used in a number of risk checks, and for 3D Secure.\n\n\nshopperIP\n\nThe shopper's IP address. Strongly recommended because this field is used in a number of risk checks.\n\n\nshopperReference\n\nYour reference to uniquely identify this shopper. Minimum length: three characters. Do not include personally identifiable information, for example name or email address. Strongly recommended because this field is used in a number of risk checks.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, go to data quality and risk field reference.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\nUsing the Adyen Uplift Personalize module and accessing the Checkout dashboard.\n\n\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\nHandle the additional action\n\n    \n        Client website\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\n\nImplement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding payment method guide for it.\n\nTo handle the additional action:\n\nPass the action object from your server to the onSubmit actions.resolve() function.\nThe Component performs the additional action on the client side.\n\nYou handle the payment data, depending on the action type (action.type).\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\n\n\nRedirect action\nWhen the  \/payments response includes action.type redirect, the Component redirects your shopper to another website to complete the payment.\n\n\nWhen the shopper finishes their payment on the other website, they are returned to your returnUrl with an HTTP GET request. The returnUrl is appended with a Base64-encoded redirectResult.\n\n\n\n\nIf the shopper fails to return to your website, you do not get the redirectResult. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\nTo process the result:\n\nGet the redirectResult appended to your return URL. You do not need to decode it.\nPass the redirectResult to your server.\n\nSend additional payment details to complete the payment flow.\n\n\n\n\n\n3D Secure 2 authentication action\nWhen the  \/payments response includes action.type: threeDS2, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.\n\nThe Component handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.\nThe Component calls onAddtionalDetails.\nPass the state.data from onAdditionalDetails to your server.\nSend additional payment details to complete the payment flow.\n\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must scan a QR code to complete the payment.\n\nThe Component shows the QR code to the shopper.\nThe shopper scans the QR code to complete the payment.\nThe Component calls onAddtionalDetails.\nPass the state.data from onAdditionalDetails to your server.\nSend additional payment details to complete the payment flow.\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.\n\nThe Component shows a different UI in an overlay.\nThe shopper uses the UI overlay to complete the payment.\nThe Component calls onAddtionalDetails.\nPass the state.data from onAdditionalDetails to your server.\nSend additional payment details to complete the payment flow.\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\nThe Component shows the voucher to the shopper.\nThe shopper uses the voucher to pay outside of your website.\nYou get the payment outcome.\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.\n\nThe Component shows the instructions for the additional action to complete the payment.\nThe shopper does the additional action.\nThe Component calls onAddtionalDetails or onError, depending on the result of the additional action.\nPass the state.data from onAdditionalDetails or onError to your server.\nSend additional payment details to complete the payment flow.\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details.\n\nFor redirects: if the shopper fails to return to your website, you do not get additional payment details to send. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\nPass additional payment details to your server, depending on the action you handled:\n\nIf you handled a redirect: pass the redirectResult.\nIf you handled a non-redirect additional action: pass the complete state.data object from the onAdditionalDetails event.\n\n\n\nFrom your server, make a POST  \/payments\/details request including the redirectResult or the full state.data object, depending on the action you handled.\n\n\n\n\n\nPass the  \/payments\/details response from your server to your client app.\n\n\n\n\n\n\n\nGet the payment outcome\nAfter the Component finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client website\n    \n\n\nUse the resultCode from the onPaymentCompleted or onPaymentFailed event to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \n\nError handling\nIn case you encounter errors in your integration, refer to the following:\n\nAPI error codes: If you receive a non-HTTP 200 response, use the errorCode to troubleshoot and modify your request.\nPayment refusals: If you receive an HTTP 200 response with an Error or Refused resultCode, check the refusal reason and, if possible, modify your request.\n\nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account. Review the process to start accepting payments on Get started with Adyen.\nAssess your PCI DSS compliance by submitting the Self-Assessment Questionnaire-A.\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nLoad Components from one of our live environments and set the environment to match your live endpoints:\n\n\n\nEndpoint region\nValue\n\n\n\n\nEurope (EU) live\nlive\n\n\nUnited States (US) live\nlive-us\n\n\nAustralia (AU) live\nlive-au\n\n\nAsia Pacific &amp; Southeast (APSE) live\nlive-apse\n\n\nIndia (IN) live\nlive-in\n\n\n\n\nSee also\n\n\n                    Tokenization\n                \n                    3D Secure\n                \n                    PCI DSS compliance guide\n                \n                    Adyen Uplift requirements and recommendations\n                \nNext steps\n\nrequiredModify paymentsFind out how to cancel, refund, or capture a payment using our API.Add payment methodsLearn about payment methods and how to add them to your account.TokenizationSave shopper payment details for later payments.3D Secure authenticationComply with regulations such as PSD2 SCA in Europe.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["Web","Components"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=Web&integration=API only","title":"Web API only","content":"API only\nCreate your own client-side UI and use our API endpoints to get the list of available payment methods and submit a payment.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nFull control of styling on your checkout page\nYour own UI elements\nCreating your own client-side logic\n\nHandling secure card data and authentication\nYou must ensure that your integration complies with regulatory requirements such as PCI DSS and PSD2 SCA.\nWe recommend that you use our pre-built client-side solutions to securely do the following:\n\nCollect, validate, and encrypt card details: Implement our solution to handle encrypted card data with your custom UI and comply with PCI DSS regulations.\nAuthenticate transactions with 3D Secure 2: Handle the 3D Secure 2 authentication action using our solution and comply with PSD2 SCA regulations for online payments.\nWith an API-only integration, you create your own UI, implement your own client-side logic, and use our API to send and receive payment data. You have full control over the look and feel of your checkout page.\nTo reduce your development time and resources, you can use one of our pre-built UI options (Drop-in\/Components) instead.Requirements\nBefore you build your integration, take into account the following requirements and preparations.\n\n\n\nRequirement\nDescription\n\n\n\n\nAPI credential roles\nMake sure that you have the following role: Checkout webservice role\n\n\nCustomer Area roles\nMake sure that you have one of the following roles: Merchant admin role Manage API credentials\n\n\nWebhooks\nSubscribe to the following webhook: Standard webhooks\n\n\nLimitations\nYour PCI compliance assesment determines your integration options for card payments.For 3D Secure 2 authentication for shoppers using Chrome, your cookies must use the SameSite attribute. \n\n\nSetup steps\nBefore you begin: Create your Adyen test accountGet your API key.Get your client key.Set up webhooks.If you want to process payments using raw card data, contact your Adyen Account Manager to confirm that you are eligible.\n\n\nHow it works\nFor an API-only integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details.\nYour client: shows your custom UI where the shopper makes the payment. Passes data to and receives data from your payment server to handle the payment flow and additional actions on your client.\nYour webhook server: receives webhooks that include the outcome of each payment.\n\nIntegration steps\nThe parts of your integration work together to handle the payment flow:\n\nFrom your server, make an API request to get a list of payment methods available to the shopper.\nShow the payment form to collect the shopper's payment details in your UI.\nFrom your server, make a payment request with the data that you have collected from the shopper.\nFor some payment methods, you use your client to handle the additional action that your shopper must do. For example, you redirect your shopper to another website or show a QR code that the shopper uses to complete the payment.\nFrom your server, send additional payment details.\nGet the payment outcome.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client website or app\n    Go to the integration steps for your client.\n        Webhook server\n    Go to the integration steps for your webhook server.\nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.\n\n\nFrom your server, make a\u00a0POST  \/paymentMethods request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nAn object with the following parameters: currency: The three-character ISO currency code.value: The value of the payment in minor units.\n\n\nchannel\n\nWeb\n\n\ncountryCode\n\nThe shopper's country\/region. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nLanguage and country code. This is used to translate the payment methods names in the response.  Default value: en-US.\n\n\n\nThe information that you include is used to filter the list of available payment methods.\n\n\n\nThe response includes the list of available payment methods, in the paymentMethods object. The payment methods are ordered by popularity in the shopper's country. For each payment method, the response contains:\n\n\n\nParameter name\nDescription\n\n\n\n\nname\nThe name of the payment method that you can show in your payment form.\n\n\ntype\nThe unique payment method code. You must include this when you make a payment.\n\n\n\n\n\n\n\n\nPass the list of available payment methods and the required input fields for each payment method to your client.\n\nBuild your payment form\n\n    \n        Client website or app\n    \n\n\nCreate your payment form where the shopper enters their information. We recommend that you collect commonly-used shopper information in your payment form to process a transactions, depending on your type of business.\n\nSome payment methods require you to collect, or optionally accept, additional information that you include in the payment request. For the additional information you must collect in your payment form for an individual payment method, go to our API-only guide for the individual payment method.\nWe provide payment method and issuer logos that you can download and use in your payment form.\nCredit and debit card details\nBecause governing bodies and organizations regulate the handling of credit and debit card information strictly, you must make sure that you are compliant when collecting card details. When a shopper selects to pay with a card, use the integration option that corresponds to your level of PCI compliance:\n\n(Recommended) Adyen's Custom Card Component with encryption: our pre-built UI with logic to securely encrypt and handle payment card data.\nYour own UI and logic to collect and handle raw card data: before you build an integration that collects raw credit and debit card data, you must assess your PCI compliance according to the most extensive self-assessment form and contact your Adyen Account Manager to confirm that you are eligible.\n\nInformation in the payment form\nAfter collecting information in your payment form, you must add it to corresponding API parameters that you include in the payment request.\nFor example, for commonly-used information:\n\n\n\nField in the payment form\nAPI request parameter\n\n\n\n\nFirst name\nshopperName.firstName\n\n\nLast name\nshopperName.lastName\n\n\nEmail address\nshopperEmail\n\n\nBilling address (multiple fields)\nbillingAddress (object)\n\n\nShipping address (multiple fields)\ndeliveryAddress (object)\n\n\nPhone number\ntelephoneNumber\n\n\n\n    \n    \n        \n            \n            \n                                    Downloading logos\n                            \n        \n        \n            \nIf you are building your own UI, we provide payment method and issuing bank logos that you can use on your checkout page. The images are available in PNG format with different sizes and screen resolutions and in SVG format.\nIf you cannot find a payment method or issuer logo, contact our Support Team.\nPayment method logos\nDownload the images from the links below, specifying:\n\n\nimg-size: Specify the size for PNG format. Use the following values:\n\nsmall: Image size 40x26 pixels\nmedium: Image size 77x50 pixels\nlarge: Image size 154 x 100 pixels\n\n\n\nsuffix: Specify the image density for PNG format. If not specified, the images will have the same size as the img-size.  Append any of the following values:\n\n@2x\n@3x\n-ldpi\n-hdpi\n-xhdpi\n-xxhdpi\n-xxxhdpi\n\n\n\npm-type: The paymentMethods.type returned in the \/paymentMethods response. For example, googlepay or primeiropay_boleto.\nFor cards, the values you should use are specified under brands with type: scheme. For example, mc, visa, and amex. To get a generic card logo, set pm-type to card.\n\n\nDownload link for SVG:\n\n    \n\nDownload link for PNG:\n\n    \n\nExamples:\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/mc.svg\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/large\/googlepay@2x.png\nIssuing bank logos\nSome payment methods such as iDEAL present a list of issuing banks to the shopper.\nDownload the issuing bank logos from the links below, specifying:\n\n\nimg-size: Specify the size for PNG format. Use the following values:\n\nsmall: Image size 40x26 pixels\nmedium: Image size 77x50 pixels\nlarge: Image size 154 x 100 pixels\n\n\n\nsuffix: Specify the image density for PNG format. If not specified, the images will have the same size as the img-size.  Append any of the following values:\n\n@2x\n@3x\n-ldpi\n-hdpi\n-xhdpi\n-xxhdpi\n-xxxhdpi\n\n\n\npm-type: The paymentMethods.type in objects with details.key issuer returned in the \/paymentMethods response. For example, ideal.\n\n\nissuerid: The details.items.id referring to the issuing bank. For example, 1121 and 1151 for iDEAL.\n\n\nDownload link for SVG:\n\n    \n\nDownload link for PNG:\n\n    \n\nExamples:\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/ideal\/1121.svg\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/small\/ideal\/1151-xxhdpi.png\n\n        \n    \n\nMake a payment\n\n    \n        Payment server\n    \n\n\nAfter the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.\n\n\nPass the data from your client to your server.\n\n\nFrom your server, make a POST  \/payments request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nAn object with the following parameters: currency: The three-character ISO currency code.value: The value of the payment in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod.type\n\nThe payment method type. From the \/paymentMethods response, this is the value in paymentMethod.type.\n\n\nreturnUrl\n\nThe URL where the shopper should return to after a redirection.  Format: Include the protocol: http:\/\/ or https:\/\/.Maximum 1024 characters.If it includes non-ASCII characters, such as spaces or special letters, URL encode it.You can include your own additional query parameters, such as a shopper ID or order reference number.   The URL must not include personally identifiable information (PII), for example name or email address. \n\n\napplicationInfo\n\nIf you are a technology partner, service partner, or system integrator, send information about the application, so that we can offer you more support.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, go to data quality and risk field reference.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\n\n\n\n\n\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\nHandle the additional action\n\n    \n        Client website or app\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\n\nImplement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding payment method guide for it.\n\nHow you handle the action depends on the action type (action.type):\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\nRedirect action\nWhen the  \/payments response includes action.type redirect, redirect the shopper to another site to complete the payment.\nHow you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.\n\n\n    \n        \n        \n    \n\n\n3D Secure 2 authentication action\nWhen the  \/payments response includes action.type: threeDS2Fingerprint or threeDS2Challenge, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow. Use one of our 3D Secure 2 solutions to handle the action.\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must scan a QR code to complete the payment.\n\n    \n\n\n\nFrom the  \/payments response, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\naction.qrCodeData\nContains the URL for the QR code.\n\n\n\n\n\nGet the qrCodeData from the action object. This parameter contains a URL for the QR code.\n\n\nShow the QR code to the shopper.\n\n\nThe shopper scans the QR code.\n\n\nSend additional payment details to finish the payment flow.\n\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.\n\n    \n\n\n\nFrom the  \/payments response, get the following from the action object:\n\n\n\nParameter\nDescription\n\n\n\n\nsdkData\nThe data that you must pass to the SDK.\n\n\n\n\n\nPass the data from the sdkData object to the SDK.\n\n\nThe shopper uses the SDK to finish the payment.\n\n\nGet the result from the SDK.\n\n\nSend additional payment details to finish the payment flow.\n\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\n    \n\n\n\nThe data included in the  \/payments response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\nexpiresAt\nThe date when the voucher expires.\n\n\ninitialAmount\nThe payment amount and currency.\n\n\nmerchantName\nThe name of your shop.\n\n\ninstructionsUrl\nThe URL where you shopper can get additional information and instructions about how to pay.\n\n\n\n\n\nShow voucher information to the shopper that your shopper uses to pay outside of your client.\n\n\nSend additional payment details to finish the payment flow.\n\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.\n\n    \n\n\n\nFrom the  \/payments response, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\naction.paymentData\nAdditional payment data.\n\n\n\n\n\nThe shopper finishes the additional action for the payment.\n\n\nSend additional payment details to finish the payment flow.\n\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details.\n\nFor redirects: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding webhook message for the outcome of the payment.\n\nFrom your server, make a POST  \/payments\/details request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the API-only page for the individual payment method .\n\n    \n\nThe response includes information about the current payment status.\n\n    \n\n\n    \nGet the payment outcome\nAfter the shopper finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client website or app\n    \n\n\nUse the \n  resultCode\n to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \nError handling\nIn case you encounter errors in your integration, refer to the following:\n\nAPI error codes: If you receive a non-HTTP 200 response, use the errorCode to troubleshoot and modify your request.\nPayment refusals: If you receive an HTTP 200 response with an Error or Refused resultCode, check the refusal reason and, if possible, modify your request.\nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account.\nAssess your PCI DSS compliance by submitting:\n\nthe Self-Assessment Questionnaire-A, if you are using the Custom Card Component.\nthe Self-Assessment Questionnaire-D, if you are submitting raw card data.\n\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nrequiredSet up notificationsReceive confirmation when a payment is authorised or fails.requiredAdd payment methodsLearn about payment methods and how to add them to your account.Payment modificationsFind out how to cancel, refund, or capture a payment using our API.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["Web","API only"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=iOS&integration=Drop-in","title":"iOS Drop-in","content":"iOS Drop-in\nRender a list of available payment methods anywhere in your app.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nLowest development time to integrate payment methods\nUI styling customization for the list of payment methods\nAdding payment methods to the list requires no extra development time\n3D Secure 2 support built in\nDrop-in is our pre-built UI solution for accepting payments in your app. Drop-in shows all payment methods as a list, in the same block. For the Advanced flow, your server makes API requests to the  \/paymentMethods,  \/payments, and  \/payments\/details endpoints.Requirements\nBefore you begin to integrate, make sure you have followed the Get started with Adyen guide to:\n\nGet an overview of the steps needed to accept live payments.\nCreate your test account.\n\nAfter you have created your test account:\n\nGet your API key.\nGet your client key.\nSet up webhooks to know the payment outcome.\n\nInstall the Adyen iOS client-side library\nChoose how you want to install the Adyen iOS client-side library:\n\n\n    \n        \n        \n    \n\n\nGet your client key\nYou need a client key, a public key linked to your API credential, that the iOS Drop-in uses for client-side authentication.\n\nLog in to your Customer Area.\nGo to Developers &gt; API credentials, and select the API credential for your integration, for example ws@Company.[YourCompanyAccount].\nUnder Authentication, select Generate New Client Key.\nSelect Save.\nHow it works\nFor a Drop-in integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details. \n\nYour client  app: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  app. \nYour webhook server: receives webhooks that include the outcome of each payment.\n\nThe parts of your integration work together to complete the payment flow:\n\n  \n\n\nFrom your server, submit a request to get a list of payment methods available to the shopper.\nCreate an instance of Drop-in.\nFrom your server, submit a payment request with the data returned by Drop-in.\nDetermine from the response if you need to perform additional actions on your client app.\nFrom your server, submit additional payment details with the data returned by Drop-in.\nGet the payment outcome.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\nPayment serverGo to the integration steps for your server.\n        Payment server\n    Client  appGo to the integration steps for your client  app.\n        Client\n    Webhook serverGo to the integration steps for your webhook server.\n        Webhook server\n    \nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.\nFrom your server, make a\u00a0POST \/paymentMethods request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.\n\nWe use the optional parameters to tailor the list of available payment methods to your shopper.\n\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe currency of the payment and its value in minor units.\n\n\nchannel\n\nThe platform where the payment is taking place. Use iOS. Adyen returns only the payment methods available for iOS.\n\n\ncountryCode\n\nThe shopper's country\/region. Adyen returns only the payment methods available in this country. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nBy default, the shopperlocale is set to en-US. To change the language, set this to the shopper's language and country code. You also need to set the same ShopperLocale within your Drop-in configuration.\n\n\n\nThe following example shows how to get the available payment methods for a shopper in the Netherlands, for a payment of EUR&nbsp;10:\n\n    \n\nThe response includes the list of available paymentMethods:\n\n    \n\nPass the response to your client app. You will use this in the next step to present which payment methods are available to the shopper.Add Drop-in to your payment form\n\n    \n        Client app\n    \n\n\nNext, use Drop-in to show the available payment methods and to collect payment details from your shopper.\n\n\nDecode the  \/paymentMethods response with the PaymentMethods structure.\n\n\n\n\n\n\nCreate an instance of APIContext that contains to following:\n\n\n\n\nDescription\n\n\n\n\nClient key\nAuthenticates requests from your payment environment.\n\n\nEnvironment setting\nThe environment value that matches the endpoint that your server uses. Use Environment.test for your test environment.\n\n\n\n\n\n\n\n\nCreate an instance of AdyenContext that contains the following: \n\n\n\n\nDescription\n\n\n\n\nAPI context\nYour instance of APIContext.\n\n\nPayment information\nA Payment object with the payment amount and currency.\n\n\n\n\n\n\n\n\n\nCreate a Drop-in configuration object (DropInComponent.Configuration). You can add the following: \n\n\n\nType of configuration\nDescription\n\n\n\n\nPayment method configuration\nSome payment methods require additional configuration or have optional configuration.\n\n\nOptional configuration\nYou can add optional configuration for Drop-in.\n\n\n\nThe following example shows an optional configuration for cards.\n\n\n\n\n\n\nInitialize Drop-in (\n  DropInComponent\n). \n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\npaymentMethods\n\nThe full, decoded  \/paymentMethods response.\n\n\ncontext\n\nThe AdyenContext that you created.\n\n\npaymentMethodsConfiguration\nFor some payment methods.\nConfiguration for specific payment methods.\n\n\n\n\n\n\n\n\n\nAfter the shopper selects a payment method and provides payment details, Drop-in invokes the didSubmit method. Get the contents of data.paymentMethod and pass this to your server.\nfunc didSubmit(_ data: PaymentComponentData, for paymentMethod: PaymentMethod, from component: DropInComponent)\nIf an error occurs on the app, Drop-in invokes the didFail method. Dismiss Drop-in's view controller and display an error message.\nfunc didFail(with error: Error, from component: DropInComponent)\nIf the shopper decides not to continue with the selected payment method, Drop-in invokes the didCancel method. You can use didCancel to track the state of the payment.\nfunc didCancel(component: PaymentComponent, from dropInComponent: DropInComponent)\n\n\n\nFor more information on iOS Drop-in classes, see our reference documentation page.\nMake a payment\n\n    \n        Payment server\n    \n\n\nWhen the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.\n\n\nPass the full data from didSubmit to your server.\n\n\nFrom your server, make a POST  \/payments request including the following:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe\u00a0currency\u00a0of the payment and\u00a0its value\u00a0in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod\n\nThe complete data.paymentMethod object from the didSubmit method from your client app. It includes the payment method details and other required information.\n\n\npaymentMethod.sdkData\n\nThe object that includes information collected by Drop-in to track the user's payment journey, including information like the checkout attempt identifier. This is required to use the Checkout dashboard that lets you analyze your checkout performance.\n\n\nreturnUrl\n\nThe URL the shopper should be taken back to after a redirection. Use the custom URL for your app, for example, my-app:\/\/adyen, to take the shopper back to your app after they complete the payment outside of your app. For more information on setting a custom URL scheme, read the Apple Developer documentation. The URL can contain a maximum of 1024 characters. You can also include your own additional query parameters, for example, shopper ID or order reference number.\n\n\n\n  applicationInfo\n\n\nIf you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to Building Adyen solutions.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, see Required risk fields.\nNative 3D Secure 2 authentication.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\n\n\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\nHandle the additional action\n\n    \n        Client app\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\nTo handle the action:\n\n\nPass the full action object from your server to your client app.\n\n\nCall \n  dropInComponent.handle(action)\n to trigger Drop-in to handle the additional action.\n\n\n\n\n\nDrop-in performs the additional action in your app.\n\n\nYou handle the payment data, depending on the value of action.type.\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\n\n\nRedirect action\n\nWhen the  \/payments response includes action.type redirect, Drop-in redirects your shopper to another website to complete the payment.\n\n\nWhen the shopper returns to your app, inform Drop-in. To do this, implement the following in your UIApplicationDelegate:\nfunc application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey: Any] = [:]) -&gt; Bool {\nRedirectComponent.applicationDidOpen(from: url)\nreturn true\n}\n\n\nAfter Drop-in completes the additional action, Drop-in invokes the didProvide method.\n\n\n\nIf an error occurs in the app, Drop-in invokes the didFail method. Dismiss Drop-in's view controller and display an error message.\n\n\n\n\n\nGet the data from the didProvide method.\n\n\nDismiss Drop-in immediately or after the following step.\n\n\nPass the contents of data to your server.\n\n\nSend additional payment details.\n\nIf the shopper fails to return to your app, you do not get the additional data to send. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\n3D Secure 2 authentication action\nWhen the response includes action.type: threeDS2, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.\n\n\nDrop-in handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.\n\n\nAfter Drop-in completes the additional action, it invokes the didProvide method.\n\n\n\nIf an error occurs in the app, Drop-in invokes the didFail method. Dismiss Drop-in's view controller and display an error message.\n\n\n\n\n\nGet the data from the didProvide method.\n\n\nDismiss dropInComponent now or after the following step.\n\n\nPass the contents of data to your server.\n\n\nSend additional payment details.\n\n\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must scan a QR code to complete the payment.\n\n\nAdyenActionComponent uses presentationDelegate to show the UI for QR code payment.\n\n\nDrop-in polls the payment status and, if completed, calls the didProvide method.\n\n\n\nIf an error occurs in the app, Drop-in invokes the didFail method. Dismiss Drop-in's view controller and display an error message.\n\n\n\n\n\nGet the data from the didProvide method.\n\n\nDismiss dropInComponent now or after the following step.\n\n\nPass the contents of data to your server.\n\n\nSend additional payment details.\n\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use the payment method's app to complete the payment.\n\n\nAdyenActionComponent triggers the app switch from your app to the payment method's app, if installed in the shopper's device.\n\n\nWhen the shopper returns to your app, Drop-in invokes the didProvide method.\n\n\n\nIf an error occurs in the app, Drop-in invokes the didFail method. Dismiss Drop-in's view controller and display an error message.\n\n\n\n\n\nGet the data from the didProvide method.\n\n\nDismiss dropInComponent now or after the following step.\n\n\nPass the contents of data to your server.\n\n\nSend additional payment details.\n\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\n\nAdyenActionComponent uses presentationDelegate to show the UI for the voucher.\n\n\nThe shopper shares, saves the voucher as an image or, in some cases, adds the voucher to Apple Wallet.\n\n\nWhen the shopper completes the flow, Drop-in invokes the didComplete method.\n\n\n\nIf an error occurs in the app, Drop-in invokes the didFail method. Dismiss Drop-in's view controller and display an error message.\n\n\n\n\n\nDismiss dropInComponent. The payment flow in your app is complete.\n\n\n\nAfter the shopper pays, or the voucher expires, your webhook server gets the webhook to update the payment status.\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment.\n\n\nAdyenActionComponent uses presentationDelegate to show the await UI. The shopper continues payment process outside of your app.\n\n\nDrop-in polls the payment status and, if completed, calls the didProvide the didProvide method from the ActionComponentDelegate.\n\n\n\nIf an error occurs in the app, Drop-in invokes the didFail method. Dismiss Drop-in's view controller and display an error message.\n\n\n\n\n\nGet the data from the didProvide method.\n\n\nDismiss dropInComponent now or after the following step.\n\n\nPass the contents of data to your server.\n\n\nSend additional payment details.\n\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details.\n\nFor redirects: if the shopper fails to return to your app, you do not get additional payment details to send. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\nPass the full data object from the didProvide method to your server.\n\n\nFrom your server, make a POST  \/payments\/details request including the full data object.\n\n\n\n\n\nPass the  \/payments\/details response from your server to your client app.\n\n\n\n\n\n\n\nDismiss Drop-in\n\n    \n        Client app\n    \n\n\nAfter you make a  \/payments request to submit the payment data or a  \/payments\/details request to send additional details, dismiss Drop-in to finalize the payment flow.\nCall finalizeIfNeeded and do the following, depending on what the Drop-in handled:\n\n\n\n\nWhat to do\n\n\n\n\nResult code\nIf no further steps are required from the application, dismiss Drop-in.\n\n\nError\nDismiss Drop-in, and show an error message.\n\n\n\nImplement the following in your dropInComponent object:\n\n    \nGet the payment outcome\nAfter Drop-in finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client app\n    \n\n\nUse the \n  resultCode\n to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \nTest and go live\nBefore going live, use our list of test cards and other payment methods to test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your Customer Area, under Transactions &gt; Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account. \u00a0\nAssess your PCI DSS compliance, and submit the Self-Assessment Questionnaire-A.\nConfigure your live account.\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nLoad Drop-in from one of our live environments and set the \n  dropInComponent.environment\n to match your live endpoints:\n\n\n\nEndpoint region\nenvironment value\n\n\n\n\nEurope\nliveEurope\n\n\nAustralia\nliveAustralia\n\n\nUS\nliveUnitedStates\n\n\nAsia Pacific and South East\nliveApse\n\n\n\n\nError handling\nIn case you encounter errors in your integration, refer to the following:\n\nAPI error codes: If you receive a non-HTTP 200 response, use the errorCode to troubleshoot and modify your request.\nPayment refusals: If you receive an HTTP 200 response with an Error or Refused resultCode, check the refusal reason and, if possible, modify your request.\nOptional configuration\n\n    \n        Client app\n    \n\n\nYou can set additional configuration on the Drop-in configuration.\n\n\n\nParameter name\nDescription\n\n\n\n\nshopperInformation\nPrefilled shopper information.\n\n\nlocalizationParameters\nLocalization parameters, like custom placeholders in other languages.\n\n\nstyle\nCustom styling of the UI.\n\n\nLocalization\niOS Drop-in supports the languages listed here.\nTo customize a localization, add a new localizable.strings file for the language that you need. You can also override existing strings by using the same keys.\nFor example, to override the cardholder name field title, set the following on your localizable.strings file:\n\"adyen.card.nameItem.title\" = \"Your cardholder name\";\nTo find localized strings, the library first checks your custom localizable.strings file, and then the default Adyen file.\nYou can use LocalizationParameters to customize the localization file name, bundle, or the separator for translation strings.\nFor example, if you store translations in MyLocalizable.strings files in the shared bundle CommonBundle:\nlet localizationParameters = LocalizationParameters(bundle: commonBundle, tableName: \"MyLocalizable\")\ndropInComponent.localizationParameters = localizationParameters\nSee also\n\n\n                    Adyen iOS Reference\n                \n                    Adyen iOS on GitHub\n                \n                    Tokenization\n                \nNext steps\n\nrequiredSet up notificationsReceive confirmation when a payment is authorised or fails.Add payment methodsLearn about payment methods and how to add them to your account.Payment modificationsFind out how to cancel, refund, or capture a payment using our API.3D Secure authenticationComply with regulations such as PSD2 SCA in Europe.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["iOS","Drop-in"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=iOS&integration=Components","title":"iOS Components","content":"iOS Components\nRender individual payment methods anywhere in your app.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nLow development time to integrate each payment method component\nUI styling customization for each payment method\nFlexibility to add payment method components with configuration for each\n3D Secure 2 support using the 3D Secure 2 Component\nComponents are our pre-built UI solution for accepting payments in your app. Each Component renders a payment method you can render anywhere in your app. For the Advanced flow, your server makes API requests to the  \/paymentMethods,  \/payments, and  \/payments\/details endpoints.Requirements\nBefore you begin to integrate, make sure you have followed the Get started with Adyen guide to:\n\nGet an overview of the steps needed to accept live payments.\nCreate your test account.\n\nAfter you have created your test account:\n\nGet your API key.\nGet your client key.\nSet up webhooks to know the payment outcome.\n\nInstall the Adyen iOS client-side library\nChoose how you want to install the Adyen iOS client-side library:\n\n\n    \n        \n        \n    \n\n\nGet your client key\nYou need a client key, a public key linked to your API credential, that the iOS Components use for client-side authentication.\n\nLog in to your Customer Area.\nGo to Developers &gt; API credentials, and select the API credential for your integration, for example ws@Company.[YourCompanyAccount].\nUnder Authentication, select Generate New Client Key.\nSelect Save.\nHow it works\nFor a Components integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details. \n\nYour client  app: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client  app. \nYour webhook server: receives webhooks that include the outcome of each payment.\n\nThe parts of your integration work together to complete the payment flow:\n\nFrom your server, submit a request to get a list of payment methods available to the shopper.\nAdd Components to your payments form.\nFrom your server, submit a payment request with the data returned by the Component.\nDetermine from the response if you need to perform additional actions on your client app, such as to redirect the shopper.\nFrom your server, verify the payment result.\nGet the payment outcome.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client app\n    Go to the integration steps for your client  app.\n        Webhook server\n    Go to the integration steps for your webhook server.\nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.\nFrom your server, make a\u00a0POST \/paymentMethods request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.\n\nWe use the optional parameters to tailor the list of available payment methods to your shopper.\n\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe currency of the payment and its value in minor units.\n\n\nchannel\n\nThe platform where the payment is taking place. Use iOS. Adyen returns only the payment methods available for iOS.\n\n\ncountryCode\n\nThe shopper's country\/region. Adyen returns only the payment methods available in this country. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nLanguage and country code. By default, the shopper locale is set to en-US. If this is provided, the payment method names are translated to the specified language.\n\n\n\nThe following example shows how to get the available payment methods for a shopper in the Netherlands, for a payment of EUR&nbsp;10:\n\n    \n\nThe response includes the list of available paymentMethods:\n\n    \n\nPass the response to your client app. You then use this in the next step to present which payment methods are available to the shopper.Add Components to your payment form\n\n    \n        Client app\n    \n\n\nUse the Component to collect payment details from your shopper.\n\n\nDecode the  \/paymentMethods response with the PaymentMethods structure. Find the payment method object for the Component that you want to instantiate. For example, for a card payment, you need to find the CardPaymentMethod object.\n\n\n\nGet the payment method from the payment methods object. For example, the card payment method:\n\n\n\n\n\n\n\n\nCreate an instance of APIContext that contains to following:\n\n\n\n\nDescription\n\n\n\n\nClient key\nAuthenticates requests from your payment environment.\n\n\nEnvironment setting\nThe environment value that matches the endpoint that your server uses. Use Environment.test for your test environment.\n\n\n\n\n\n\n\n\n\n\n\nCreate an instance of AdyenContext that contains the following: \n\n\n\n\nDescription\n\n\n\n\nAPI context\nYour instance of APIContext.\n\n\nPayment information\nA Payment object with the payment amount and currency.\n\n\n\n\n\n\n\n\n\n\n\nCreate a configuration object. You can add the following: \n\n\n\nType of configuration\nDescription\n\n\n\n\nPayment method configuration\nSome payment methods require additional configuration or have optional configuration.\n\n\nOptional configuration\nYou can add optional configuration to each component.\n\n\n\nThe following example shows creating a configuration object for the Card Component.\n\n\n\n\n\n\n\n\nInitialize the Component class. \n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\npaymentMethod\n\nThe full, decoded  \/paymentMethods response.\n\n\ncontext\n\nThe AdyenContext that you created.\n\n\nconfiguration\n\nThe configuration object that you created.\n\n\n\nThe following example shows initializing an instance of \n  CardComponent\n.\n\n\n\n\n\n\nGet the contents of data.paymentMethod and pass this to your server. Dismiss the Component immediately, or wait until you have submitted the details to your server.\n\n\n\nIn case an error occurs on the app, the Component invokes the didFail method from the PaymentComponentDelegate. Dismiss the Component's view controller and display an error message.\n\n\n\n\nMake a payment\n\n    \n        Payment server\n    \n\n\nWhen the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.\n\n\nPass the full data from didSubmit to your server.\n\n\nFrom your server, make a POST  \/payments request including the following:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe\u00a0currency\u00a0of the payment and\u00a0its value\u00a0in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod\n\nThe complete data.paymentMethod object from the didSubmit method from your client app. It includes the payment method details and other required information.\n\n\npaymentMethod.sdkData\n\nThe object that includes information collected by the Component to track the user's payment journey, including information like the checkout attempt identifier. This is required to use the Checkout dashboard that lets you analyze your checkout performance.\n\n\nreturnUrl\n\nThe URL the shopper should be taken back to after a redirection. Use the custom URL for your app, for example, my-app:\/\/adyen, to take the shopper back to your app after they complete the payment outside of your app. For more information on setting a custom URL scheme, read the Apple Developer documentation. The URL can contain a maximum of 1024 characters. You can also include your own additional query parameters, for example, shopper ID or order reference number.\n\n\n\n  applicationInfo\n\n\nIf you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to Building Adyen solutions.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, see Required risk fields.\nNative 3D Secure 2 authentication.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\n\n\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\nHandle the additional action\n\n    \n        Client app\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\nUse \n  AdyenActionComponent\n and the action object from the API response to handle the action.\n\n\nPass the full action object from your server to your client app.\n\n\nCreate and persist instance of AdyenActionComponent.\n\n\n\n\n\nUse it to handle the action.\n\n\n\n\n\nAdyenActionComponent performs the additional action in your app.\n\n\nYou handle the payment data, depending on the value of action.type.\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\n\n\nRedirect action\n\nWhen the  \/payments response includes action.type redirect, the Component redirects your shopper to another website to complete the payment.\n\n\nWhen the shopper returns to your app, inform AdyenActionComponent. To do this, implement the following in your UIApplicationDelegate:\nfunc application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey: Any] = [:]) -&gt; Bool {\nRedirectComponent.applicationDidOpen(from: url)\nreturn true\n}\n\n\nAfter the Redirect Component (under the hood of AdyenActionComponent) completes the additional action, the Component invokes the didProvide method from the ActionComponentDelegate.\n\n\n\nIf an error occurs in the app, the Component invokes the didFail method from the ActionComponentDelegate. Dismiss the Component's view controller and show an error message in your app.\n\n\n\n\n\nGet the data from the didProvide method.\n\n\nDismiss the Component immediately or after the following step.\n\n\nPass the contents of data to your server.\n\n\nSend additional payment details.\n\nIf the shopper fails to return to your app, you do not get the additional data to send. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\n3D Secure 2 authentication action\nWhen the response includes action.type: threeDS2, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.\n\n\nThe Component handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.\n\n\nAfter the Component completes the additional action, it invokes the didProvide method from the ActionComponentDelegate.\n\n\n\nIf an error occurs in the app, the Component invokes the didFail method from the ActionComponentDelegate. Dismiss the Component's view controller and show an error message in your app.\n\n\n\n\n\nGet the data from the didProvide method.\n\n\nDismiss current component now or after the following step.\n\n\nPass the contents of data to your server.\n\n\nSend additional payment details.\n\n\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must scan a QR code to complete the payment.\n\n\nAdyenActionComponent uses presentationDelegate to show the UI for QR code payment.\n\n\nThe Component polls the payment status and, if completed, calls the didProvide method from the ActionComponentDelegate.\n\n\n\nIf an error occurs in the app, the Component invokes the didFail method from the ActionComponentDelegate. Dismiss the Component's view controller and show an error message in your app.\n\n\n\n\n\nGet the data from the didProvide method.\n\n\nDismiss current component now or after the following step.\n\n\nPass the contents of data to your server.\n\n\nSend additional payment details.\n\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use the payment method's app to complete the payment.\n\n\nAdyenActionComponent triggers the app switch from your app to the payment method's app, if installed in the shopper's device.\n\n\nWhen the shopper returns to your app, the Component invokes the didProvide method from the ActionComponentDelegate.\n\n\n\nIf an error occurs in the app, the Component invokes the didFail method from the ActionComponentDelegate. Dismiss the Component's view controller and show an error message in your app.\n\n\n\n\n\nGet the data from the didProvide method.\n\n\nDismiss current component now or after the following step.\n\n\nPass the contents of data to your server.\n\n\nSend additional payment details.\n\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\n\nAdyenActionComponent uses presentationDelegate to show the UI for the voucher.\n\n\nThe shopper shares, saves the voucher as an image or, in some cases, adds the voucher to Apple Wallet.\n\n\nWhen the shopper completes the flow, the Component invokes the didComplete method from the ActionComponentDelegate.\n\n\n\nIf an error occurs in the app, the Component invokes the didFail method from the ActionComponentDelegate. Dismiss the Component's view controller and show an error message in your app.\n\n\n\n\n\nDismiss current component. The payment flow in your app is complete.\n\n\n\nAfter the shopper pays, or the voucher expires, your webhook server gets the webhook to update the payment status.\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment.\n\n\nAdyenActionComponent uses presentationDelegate to show the await UI. The shopper continues payment process outside of your app.\n\n\nThe Component polls the payment status and, if completed, calls the didProvide the didProvide method from the ActionComponentDelegate.\n\n\n\nIf an error occurs in the app, the Component invokes the didFail method from the ActionComponentDelegate. Dismiss the Component's view controller and show an error message in your app.\n\n\n\n\n\nGet the data from the didProvide method.\n\n\nDismiss current component now or after the following step.\n\n\nPass the contents of data to your server.\n\n\nSend additional payment details.\n\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details.\n\nFor redirects: if the shopper fails to return to your app, you do not get additional payment details to send. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\nPass the full data object from the didProvide method to your server.\n\n\nFrom your server, make a POST  \/payments\/details request including the full data object.\n\n\n\n\n\nPass the  \/payments\/details response from your server to your client app.\n\n\n\n\n\n\n\nDismiss the Component\n\n    \n        Client app\n    \n\n\nAfter you make a  \/payments request to submit the payment data or a  \/payments\/details request to send additional details, dismiss the Component to finalize the payment flow.\nCall finalizeIfNeeded and do the following, depending on what the Component handled:\n\n\n\n\nWhat to do\n\n\n\n\nResult code\nIf no further steps are required from the application, dismiss the Component.\n\n\nError\nDismiss the Component, and show an error message.\n\n\n\nImplement the following in your currentComponent object:\n\n    \nGet the payment outcome\nAfter the Component finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client app\n    \n\n\nUse the resultCode to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \nTest and go live\nBefore going live, use our list of test cards and other payment methods to test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your Customer Area, under Transactions &gt; Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account. \u00a0\nAssess your PCI DSS compliance, and submit the Self-Assessment Questionnaire-A.\nConfigure your live account.\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nLoad the Components from one of our live environments and set the Component's \n  environment\n to match your live endpoints:\n\n\n\nEndpoint region\nenvironment value\n\n\n\n\nEurope\nliveEurope\n\n\nAustralia\nliveAustralia\n\n\nUS\nliveUnitedStates\n\n\nAsia Pacific and South East\nliveApse\n\n\n\n\nError handling\nIn case you encounter errors in your integration, refer to the following:\n\nAPI error codes: If you receive a non-HTTP 200 response, use the errorCode to troubleshoot and modify your request.\nPayment refusals: If you receive an HTTP 200 response with an Error or Refused resultCode, check the refusal reason and, if possible, modify your request.\nOptional configuration\n\n    \n        Client app\n    \n\n\nYou can set additional configuration on the Component configuration.\n\n\n\nParameter name\nDescription\n\n\n\n\nshowsSubmitButton\nSet to false to hide the default pay button, so that you can implement a custom button instead.  Default: true.\n\n\nshopperInformation\nPrefilled shopper information.\n\n\nlocalizationParameters\nLocalization parameters, like custom placeholders in other languages.\n\n\nstyle\nCustom styling of the UI.\n\n\n\nThe following example shows how to set optional configuration parameters on the Card Component.\n\n    \n\nImplement a custom pay button\nTo implement a custom pay button, hide the default one and use the included functions to validate and submit payment data.\n\nThis is not supported for Apple Pay and BACS Direct Debit.\n\n\nWhen you create the configuration object, set showsSubmitButton to false. \nInitialize the Component.\nYou can optionally show a confirmation page to the shopper, where payment data is validated.\nCreate and show your custom button.\n\nYou can use the following functions.\n\n\n\nFunction\nRequired\nDescription\n\n\n\n\nvalidate()\n\nValidates the payment data.\n\n\nsubmit()\n\nMakes a  \/payments request to submit the payment data.\n\n\n\nThe following example shows the Card Component with a custom pay button.\n\n    \nLocalization\niOS Components support the languages listed here.\nTo customize a localization, add a new localizable.strings file for the language that you need. You can also override existing strings by using the same keys.\nFor example, to override the cardholder name field title, set the following on your localizable.strings file:\n\"adyen.card.nameItem.title\" = \"Your cardholder name\";\n\nFor more information on iOS Components classes, see our reference documentation page.\n\nTo find localized strings, the library first checks your custom localizable.strings file, and then the default Adyen file.\nYou can use LocalizationParameters to customize the localization file name, bundle, or the separator for translation strings.\nFor example, if you store translations in MyLocalizable.strings files in the shared bundle CommonBundle:\nlet localizationParameters = LocalizationParameters(bundle: commonBundle, tableName: \"MyLocalizable\")\ncardComponentConfiguration.localizationParameters = localizationParameters\nSee also\n\n\n                    Adyen iOS Reference\n                \n                    Adyen iOS on GitHub\n                \n                    Tokenization\n                \nNext steps\n\nrequiredSet up notificationsReceive confirmation when a payment is authorised or fails.Add payment methodsLearn about payment methods and how to add them to your account.Payment modificationsFind out how to cancel, refund, or capture a payment using our API.3D Secure authenticationComply with regulations such as PSD2 SCA in Europe.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["iOS","Components"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=iOS&integration=API only","title":"iOS API only","content":"API only\nCreate your own client-side UI and use our API endpoints to get the list of available payment methods and submit a payment.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nFull control of styling on your checkout page\nYour own UI elements\nCreating your own client-side logic\n\nHandling secure card data and authentication\nYou must ensure that your integration complies with regulatory requirements such as PCI DSS and PSD2 SCA.\nWe recommend that you use our pre-built client-side solutions to securely do the following:\n\nCollect, validate, and encrypt card details: Implement our solution to handle encrypted card data with your custom UI and comply with PCI DSS regulations.\nAuthenticate transactions with 3D Secure 2: Handle the 3D Secure 2 authentication action using our solution and comply with PSD2 SCA regulations for online payments.\nWith an API-only integration, you create your own UI, implement your own client-side logic, and use our API to send and receive payment data. You have full control over the look and feel of your checkout page.\nTo reduce your development time and resources, you can use one of our pre-built UI options (Drop-in\/Components) instead.Requirements\nBefore you build your integration, take into account the following requirements and preparations.\n\n\n\nRequirement\nDescription\n\n\n\n\nAPI credential roles\nMake sure that you have the following role: Checkout webservice role\n\n\nCustomer Area roles\nMake sure that you have one of the following roles: Merchant admin role Manage API credentials\n\n\nWebhooks\nSubscribe to the following webhook: Standard webhooks\n\n\nLimitations\nYour PCI compliance assesment determines your integration options for card payments.For 3D Secure 2 authentication for shoppers using Chrome, your cookies must use the SameSite attribute. \n\n\nSetup steps\nBefore you begin: Create your Adyen test accountGet your API key.Get your client key.Set up webhooks.If you want to process payments using raw card data, contact your Adyen Account Manager to confirm that you are eligible.\n\n\nHow it works\nFor an API-only integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details.\nYour client: shows your custom UI where the shopper makes the payment. Passes data to and receives data from your payment server to handle the payment flow and additional actions on your client.\nYour webhook server: receives webhooks that include the outcome of each payment.\n\nIntegration steps\nThe parts of your integration work together to handle the payment flow:\n\nFrom your server, make an API request to get a list of payment methods available to the shopper.\nShow the payment form to collect the shopper's payment details in your UI.\nFrom your server, make a payment request with the data that you have collected from the shopper.\nFor some payment methods, you use your client to handle the additional action that your shopper must do. For example, you redirect your shopper to another website or show a QR code that the shopper uses to complete the payment.\nFrom your server, send additional payment details.\nGet the payment outcome.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client website or app\n    Go to the integration steps for your client.\n        Webhook server\n    Go to the integration steps for your webhook server.\nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.\n\n\nFrom your server, make a\u00a0POST  \/paymentMethods request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nAn object with the following parameters: currency: The three-character ISO currency code.value: The value of the payment in minor units.\n\n\nchannel\n\niOS\n\n\ncountryCode\n\nThe shopper's country\/region. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nLanguage and country code. This is used to translate the payment methods names in the response.  Default value: en-US.\n\n\n\nThe information that you include is used to filter the list of available payment methods.\n\n\n\nThe response includes the list of available payment methods, in the paymentMethods object. The payment methods are ordered by popularity in the shopper's country. For each payment method, the response contains:\n\n\n\nParameter name\nDescription\n\n\n\n\nname\nThe name of the payment method that you can show in your payment form.\n\n\ntype\nThe unique payment method code. You must include this when you make a payment.\n\n\n\n\n\n\n\n\nPass the list of available payment methods and the required input fields for each payment method to your client.\n\nBuild your payment form\n\n    \n        Client website or app\n    \n\n\nCreate your payment form where the shopper enters their information. We recommend that you collect commonly-used shopper information in your payment form to process a transactions, depending on your type of business.\n\nSome payment methods require you to collect, or optionally accept, additional information that you include in the payment request. For the additional information you must collect in your payment form for an individual payment method, go to our API-only guide for the individual payment method.\nWe provide payment method and issuer logos that you can download and use in your payment form.\nCredit and debit card details\nBecause governing bodies and organizations regulate the handling of credit and debit card information strictly, you must make sure that you are compliant when collecting card details. When a shopper selects to pay with a card, use the integration option that corresponds to your level of PCI compliance:\n\n(Recommended) Adyen's Custom Card Component with encryption: our pre-built UI with logic to securely encrypt and handle payment card data.\nYour own UI and logic to collect and handle raw card data: before you build an integration that collects raw credit and debit card data, you must assess your PCI compliance according to the most extensive self-assessment form and contact your Adyen Account Manager to confirm that you are eligible.\n\nInformation in the payment form\nAfter collecting information in your payment form, you must add it to corresponding API parameters that you include in the payment request.\nFor example, for commonly-used information:\n\n\n\nField in the payment form\nAPI request parameter\n\n\n\n\nFirst name\nshopperName.firstName\n\n\nLast name\nshopperName.lastName\n\n\nEmail address\nshopperEmail\n\n\nBilling address (multiple fields)\nbillingAddress (object)\n\n\nShipping address (multiple fields)\ndeliveryAddress (object)\n\n\nPhone number\ntelephoneNumber\n\n\n\n    \n    \n        \n            \n            \n                                    Downloading logos\n                            \n        \n        \n            \nIf you are building your own UI, we provide payment method and issuing bank logos that you can use on your checkout page. The images are available in PNG format with different sizes and screen resolutions and in SVG format.\nIf you cannot find a payment method or issuer logo, contact our Support Team.\nPayment method logos\nDownload the images from the links below, specifying:\n\n\nimg-size: Specify the size for PNG format. Use the following values:\n\nsmall: Image size 40x26 pixels\nmedium: Image size 77x50 pixels\nlarge: Image size 154 x 100 pixels\n\n\n\nsuffix: Specify the image density for PNG format. If not specified, the images will have the same size as the img-size.  Append any of the following values:\n\n@2x\n@3x\n-ldpi\n-hdpi\n-xhdpi\n-xxhdpi\n-xxxhdpi\n\n\n\npm-type: The paymentMethods.type returned in the \/paymentMethods response. For example, googlepay or primeiropay_boleto.\nFor cards, the values you should use are specified under brands with type: scheme. For example, mc, visa, and amex. To get a generic card logo, set pm-type to card.\n\n\nDownload link for SVG:\n\n    \n\nDownload link for PNG:\n\n    \n\nExamples:\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/mc.svg\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/large\/googlepay@2x.png\nIssuing bank logos\nSome payment methods such as iDEAL present a list of issuing banks to the shopper.\nDownload the issuing bank logos from the links below, specifying:\n\n\nimg-size: Specify the size for PNG format. Use the following values:\n\nsmall: Image size 40x26 pixels\nmedium: Image size 77x50 pixels\nlarge: Image size 154 x 100 pixels\n\n\n\nsuffix: Specify the image density for PNG format. If not specified, the images will have the same size as the img-size.  Append any of the following values:\n\n@2x\n@3x\n-ldpi\n-hdpi\n-xhdpi\n-xxhdpi\n-xxxhdpi\n\n\n\npm-type: The paymentMethods.type in objects with details.key issuer returned in the \/paymentMethods response. For example, ideal.\n\n\nissuerid: The details.items.id referring to the issuing bank. For example, 1121 and 1151 for iDEAL.\n\n\nDownload link for SVG:\n\n    \n\nDownload link for PNG:\n\n    \n\nExamples:\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/ideal\/1121.svg\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/small\/ideal\/1151-xxhdpi.png\n\n        \n    \n\nMake a payment\n\n    \n        Payment server\n    \n\n\nAfter the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.\n\n\nPass the data from your client to your server.\n\n\nFrom your server, make a POST  \/payments request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nAn object with the following parameters: currency: The three-character ISO currency code.value: The value of the payment in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod.type\n\nThe payment method type. From the \/paymentMethods response, this is the value in paymentMethod.type.\n\n\nreturnUrl\n\nThe URL where the shopper should return to after a redirection. Use the custom URL scheme for your app. Example: com.mydomain.adyencheckout:\/\/  Format: Maximum 1024 characters.If it includes non-ASCII characters, such as spaces or special letters, URL encode it.You can include your own additional query parameters, such as a shopper ID or order reference number.  The URL must not include personally identifiable information (PII), for example name or email address. \n\n\napplicationInfo\n\nIf you are a technology partner, service partner, or system integrator, send information about the application, so that we can offer you more support.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, go to data quality and risk field reference.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\n\n\n\n\n\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\nHandle the additional action\n\n    \n        Client website or app\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\n\nImplement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding payment method guide for it.\n\nHow you handle the action depends on the action type (action.type):\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\nRedirect action\nWhen the  \/payments response includes action.type redirect, redirect the shopper to another site to complete the payment.\nHow you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.\n\n\n    \n        \n        \n    \n\n\n3D Secure 2 authentication action\nWhen the  \/payments response includes action.type: threeDS2Fingerprint or threeDS2Challenge, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow. Use one of our 3D Secure 2 solutions to handle the action.\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must scan a QR code to complete the payment.\n\n    \n\n\n\nFrom the  \/payments response, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\naction.qrCodeData\nContains the URL for the QR code.\n\n\n\n\n\nGet the qrCodeData from the action object. This parameter contains a URL for the QR code.\n\n\nShow the QR code to the shopper.\n\n\nThe shopper scans the QR code.\n\n\nSend additional payment details to finish the payment flow.\n\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.\n\n    \n\n\n\nFrom the  \/payments response, get the following from the action object:\n\n\n\nParameter\nDescription\n\n\n\n\nsdkData\nThe data that you must pass to the SDK.\n\n\n\n\n\nPass the data from the sdkData object to the SDK.\n\n\nThe shopper uses the SDK to finish the payment.\n\n\nGet the result from the SDK.\n\n\nSend additional payment details to finish the payment flow.\n\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\n    \n\n\n\nThe data included in the  \/payments response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\nexpiresAt\nThe date when the voucher expires.\n\n\ninitialAmount\nThe payment amount and currency.\n\n\nmerchantName\nThe name of your shop.\n\n\ninstructionsUrl\nThe URL where you shopper can get additional information and instructions about how to pay.\n\n\n\n\n\nShow voucher information to the shopper that your shopper uses to pay outside of your client.\n\n\nSend additional payment details to finish the payment flow.\n\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.\n\n    \n\n\n\nFrom the  \/payments response, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\naction.paymentData\nAdditional payment data.\n\n\n\n\n\nThe shopper finishes the additional action for the payment.\n\n\nSend additional payment details to finish the payment flow.\n\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details.\n\nFor redirects: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding webhook message for the outcome of the payment.\n\nFrom your server, make a POST  \/payments\/details request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the API-only page for the individual payment method .\n\n    \n\nThe response includes information about the current payment status.\n\n    \n\n\n    \nGet the payment outcome\nAfter the shopper finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client website or app\n    \n\n\nUse the \n  resultCode\n to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \nError handling\nIn case you encounter errors in your integration, refer to the following:\n\nAPI error codes: If you receive a non-HTTP 200 response, use the errorCode to troubleshoot and modify your request.\nPayment refusals: If you receive an HTTP 200 response with an Error or Refused resultCode, check the refusal reason and, if possible, modify your request.\nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account.\nAssess your PCI DSS compliance by submitting:\n\nthe Self-Assessment Questionnaire-A, if you are using the Custom Card Component.\nthe Self-Assessment Questionnaire-D, if you are submitting raw card data.\n\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nrequiredSet up notificationsReceive confirmation when a payment is authorised or fails.requiredAdd payment methodsLearn about payment methods and how to add them to your account.Payment modificationsFind out how to cancel, refund, or capture a payment using our API.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["iOS","API only"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=Android&integration=Drop-in","title":"Android Drop-in","content":"Android Drop-in\nRender a list of available payment methods anywhere in your app.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nLowest development time to integrate payment methods\nUI styling customization for the list of payment methods\nAdding payment methods to the list requires no extra development time\n3D Secure 2 support built in\nRequirements\nBefore you begin to integrate, make sure you have followed the Get started with Adyen guide to:\n\nGet an overview of the steps needed to accept live payments.\nCreate your test account.\n\nAfter you have created your test account:\n\nGet your API key.\nGet your client key.\nSet up webhooks to know the payment outcome.\nHow it works\nFor a Drop-in integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details. \n\nYour client  app: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  app. \nYour webhook server: receives webhooks that include the outcome of each payment.\n\nThe parts of your integration work together to complete the payment flow:\n\n  \n\n\nFrom your server, submit a request to get a list of payment methods available to the shopper.\nConfigure and launch Drop-in to collect the shopper's details.\nFrom your server, make a payment request with data that you receive from Drop-in.\nHandle additional client-side actions, if required.\nFrom your server, send additional payment details with data you receive from Drop-in, if required.\nGet the payment outcome to inform the shopper and update your order management system.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client app\n    Go to the integration steps for your client  app.\n        Webhook server\n    Go to the integration steps for your webhook server.\nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen the shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.\n\n\nFrom your server, make a POST  \/paymentMethods request, including:\n\nWe recommend that you include all the optional parameters to get the most accurate list of available payment methods.\n\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe\u00a0currency\u00a0and\u00a0value\u00a0of the payment, in minor units.\n\n\nchannel\n\nUse Android. Adyen returns only the payment methods available for Android.\n\n\ncountryCode\n\nThe shopper's country\/region. Adyen returns only the payment methods available in this country. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nBy default, the shopperlocale is set to en-US. To change the language, set this to the shopper's language and country code. You also need to set the same ShopperLocale within your Drop-in configuration.\n\n\n\nFor example, to get available payment methods for a shopper in the Netherlands, for a payment of 10 EUR:\n\n\n\nThe response includes the list of available paymentMethods:\n\n\n\n\n\nDeserialize the response to a PaymentMethodsApiResponse:\n\n\n\n    \n\n\nPass the PaymentMethodsApiResponse object to your client app to launch and show Drop-in.\nSet up Drop-in\n\n    \n        Client app\n    \n\n\n1: Import the library\nThe default implementation is with Jetpack Compose, but you can import the library without Jetpack Compose instead.\nImport the compatibility module in your build.gradle file:\n\n\n    \n        \n        \n    \n\n2: Create the configuration object\nCreate the configuration object to pass when you launch and show Drop-in.\n\n\nSet the following properties in the configuration object: \n\n\n\nProperty\nRequired\nDescription\n\n\n\n\namount\nIf you want to show the amount on the Pay button.\nThe currency and value of the payment amount shown on the Pay button.\n\n\nenvironment\n\nUse Environment.TEST for testing. When going live, use one of our live environments.\n\n\nclientKey\n\nYour client key.\n\n\nshopperLocale\n\nThe shopper's locale. By default, this is the device's locale.\n\n\n\n\n\nAdd additional configuration to this object. Some payment methods require additional configuration, and you can add optional configuration for Drop-in.\nFor example, to configure for a payment of 10 EUR:\n\n\n\n\n\nExtend the DropInService class so that you can interact with Drop-in.\n\n\nImplement methods to pass data between your client app and your server. You must also handle the DropInServiceResult which includes the result of the API requests from your server.\nFor example:\n\n\n\nDrop-in uses the DropInServiceResult to complete or dismiss the payment and determine if you need to handle additional actions. Additional actions include redirecting the shopper to another app or performing 3D Secure 2 authentication.\n\n\nAdd your DropInService to your manifest file.\nFor example:\n&lt;service\nandroid:name=\".YourDropInService\"\nandroid:exported=\"false\" \/&gt;\n\nLaunch and show Drop-in\n\n\n    \n        \n        \n    \n\n\nYour app shows Drop-in, and your shopper can choose a payment method.Make a payment\n\n    \n        Payment server\n    \n\n\nWhen the shopper enters their payment details and selects the Pay button, the onSubmit method in your DropInService class is called, passing the paymentComponentJson object.\n\n\nPass the paymentComponentJson object to your server.\n\n\nFrom your server, make a POST  \/payments request including the following:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe\u00a0currency\u00a0and\u00a0value\u00a0of the payment, in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod\n\nThe complete paymentComponentData.paymentMethod object from your client app that includes the payment method details and other required information.\n\n\npaymentMethod.sdkData\n\nThe object that includes information collected by Drop-in to track the user's payment journey, including information like the checkout attempt identifier. This is required to use the Checkout dashboard that lets you analyze your checkout performance.\n\n\nreturnUrl\n\nIn case of a redirection, this is the URL to where your shopper is redirected after they complete the payment. Maximum length: 1024 characters. Get this URL from Drop-in in the RedirectComponent.getReturnUrl(context).\n\n\n\n  applicationInfo\n\n\nIf you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support.\n\n\n\n\nYou must include additional parameters in your payment request to:\n\nIntegrate some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, go to Required risk fields.\nUse native 3D Secure 2 authentication.\nTokenize your shopper's payment details or make recurring payments.\n\n\nFor example, to make a payment request for EUR&nbsp;10:\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\n\nError handling\nIf the  \/payments request fails, return DropInServiceResult.Error to your client app, including the action object.Handle the additional action\n\n    \n        Client app\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\n\nImplement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding payment method guide for it.\n\nDeserialize the action object it and pass it to Drop-in.\n\nPass the full action object from your server to Drop-in.\nUse ActionResponse.SERIALIZER to deserialize the action object.\nReturn it as DropInServiceResult.Action to Drop-in.\nDrop-in handles the additional action on the client side.\n\nYou handle the payment data, depending on the type of action (action.type).\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\n\n\nRedirect action\nWhen the  \/payments response includes action.type redirect, Drop-in redirects your shopper to another website to complete the payment.\n\nWhen the shopper returns to your app, Drop-in calls the onAdditionalDetails method in your DropInService class.\nFrom onAdditionalDetails, get the actionComponentJson object.`\nPass the actionComponentJson object from your client app to your server.\n\nSend additional payment details.\n\nIf the shopper fails to return to your app, you do not get the additional data to send. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\n3D Secure 2 authentication action\nWhen the  \/payments response includes action.type: threeDS2, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.\n\nDrop-in handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.\nDrop-in calls the onAdditionalDetails method in your DropInService class.\nFrom onAdditionalDetails, get the actionComponentJson object.\nPass the actionComponentJson object from your client app to your server.\nSend additional payment details.\n\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must use a QR code to complete the payment.\n\nDrop-in shows the QR code to the shopper.\nWhen the shopper uses the QR code to complete the payment, Drop-in calls the onAdditionalDetails method in your DropInService class.\nFrom onAdditionalDetails, get the actionComponentJson object.\nPass the actionComponentJson object from your client app to your server.\nSend additional payment details.\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.\n\nDrop-in shows a different UI in an overlay.\nThe shopper uses the UI overlay to complete the payment.\nDrop-in calls the onAdditionalDetails method in your DropInService class.\nFrom onAdditionalDetails, get the actionComponentJson object.\nPass the actionComponentJson object from your client app to your server.\nSend additional payment details.\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\nDrop-in shows the voucher to the shopper.\nWhen the shopper completes the additional action with the voucher (for example: saving it to their digital wallet or forwarding it to their email), Drop-in calls the onAdditionalDetails method in your DropInService class.\nFrom onAdditionalDetails, get the actionComponentJson object.\nPass the actionComponentJson object from your client app to your server.\nSend additional payment details.\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.\n\nDrop-in shows the instructions for the additional action to complete the payment.\nThe shopper does the additional action.\nDrop-in calls the onAdditionalDetails method in your DropInService class.\nFrom onAdditionalDetails, get the actionComponentJson object.\nPass the actionComponentJson object from your client app to your server.\nSend additional payment details.\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details to Adyen.\n\n\nPass the full actionComponentJson object to your server.\n\n\nFrom your server, make a POST  \/payments\/details request including the full data from the actionComponentJson object.\n\n\n\n\n\nPass the  \/payments\/details response from your server to your client app.\n\n\n\n\n\n\n\nGet the payment outcome\nAfter Drop-in finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client app\n    \n\n\nUse the \n  resultCode\n to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in a webhook with eventCode: AUTHORISATION. Use this to update your order management system.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. Use the Adyen Android test cards app to access, copy, and autofill card details from within your Android device. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account. Review the process to start accepting payments on Get started with Adyen.\nAssess your PCI DSS compliance by submitting the Self-Assessment Questionnaire-A.\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nLoad  from one of our live environments and set the environment to match your live endpoints:\n\n\n\nEndpoint region\nValue\n\n\n\n\nEurope (EU) live\nEUROPE\n\n\nUnited States (US) live\nUNITED_STATES\n\n\nAustralia (AU) live\nAUSTRALIA\n\n\nAsia Pacific &amp; Southeast (APSE) live\nAPSE\n\n\nIndia (IN) live\nINDIA\n\n\n\n\nNext steps\n\nrequiredModify paymentsFind out how to cancel, refund, or capture a payment using our API.Add payment methodsLearn about payment methods and how to add them to your account.TokenizationSave shopper payment details for later payments.3D Secure authenticationComply with regulations such as PSD2 SCA in Europe.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["Android","Drop-in"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=Android&integration=Components","title":"Android Components","content":"Android Components\nRender individual payment methods anywhere in your app.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nLow development time to integrate each payment method component\nUI styling customization for each payment method\nFlexibility to add payment method components with configuration for each\n3D Secure 2 support using the 3D Secure 2 Component\nHow it works\nFor a Components integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details. \n\nYour client  app: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client  app. \nYour webhook server: receives webhooks that include the outcome of each payment.\n\nThe parts of your integration work together to complete the payment flow:\n\n\nFrom your server, submit a request to get a list of payment methods available to the shopper.\nConfigure and launch the Component to collect the shopper's details.\nFrom your server, make a payment request with data that you receive from the Component.\nHandle additional client-side actions, if required.\nFrom your server, send additional payment details that you receive from the Component, if required.\nGet the payment outcome to inform the shopper and update your order management system.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client app\n    Go to the integration steps for your client  app.\n        Webhook server\n    Go to the integration steps for your webhook server.\nRequirements\nBefore you begin to integrate, make sure you have followed the Get started with Adyen guide to:\n\nGet an overview of the steps needed to accept live payments.\nCreate your test account.\n\nAfter you have created your test account:\n\nGet your API key.\nGet your client key.\nSet up webhooks to know the payment outcome.\nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen the shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.\nFrom your server, make a POST  \/paymentMethods request, including:\n\nWe recommend that you include all the optional parameters to get the most accurate list of available payment methods.\n\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe\u00a0currency\u00a0and\u00a0value\u00a0of the payment, in minor units.\n\n\nchannel\n\nUse Android. Adyen returns only the payment methods available for Android.\n\n\ncountryCode\n\nThe shopper's country\/region. Adyen returns only the payment methods available in this country. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nBy default, the shopperlocale is set to en-US. To change the language, set this to the shopper's language and country code. You also need to set the same ShopperLocale within your Checkout configuration.\n\n\n\nFor example, to get available payment methods for a shopper in the Netherlands, for a payment of 10 EUR:\n\n    \n\nThe response includes the list of available paymentMethods:\n\n    \n\nYou must pass the response to your client app to launch and show Components.Set up Components\n\n    \n        Client app\n    \n\n\n1: Import the library\nThe default implementation is with Jetpack Compose, but you can import the library without Jetpack Compose instead.\nImport the compatibility module in your build.gradle file. For example, to import the Card Component:\n\n\n    \n        \n        \n    \n\n\nYou can find the module to import for each payment method on the corresponding payment method page.2: Create the configuration object\n\n\nSet the following properties in the configuration object:\n\n\n\nProperty\nRequired\nDescription\n\n\n\n\namount\nIf you want to show the amount on the Pay button.\nThe currency and value of the payment amount shown on the Pay button.\n\n\nenvironment\n\nUse Environment.TEST for testing. When going live, use one of our live environments.\n\n\nclientKey\n\nYour client key.\n\n\nshopperLocale\n\nThe shopper's locale. By default, this is the device's locale.\n\n\n\n\n\nInclude other configurations for the Component.\n\n\nFor example, to configure the card Component:\n\n    \n\n\n\nImplement methods in ComponentCallback to pass data between your client app and your server.\n\n\n\nMethod\nDescription\n\n\n\n\nonSubmit\nMake a  \/payments request.\n\n\nonAdditionalDetails\nMake a  \/payments\/details request.\n\n\nonError\nHandle an error if the Component encounters one.\n\n\n\n\n\nFor example, for the card Component:\n\n    \nLaunch and show the Component\n\n    \n        Client app\n    \n\n\n\n\n    \n        \n        \n    \n\n\nYour app shows the Component.Make a payment\n\n    \n        Payment server\n    \n\n\nWhen the shopper enters their payment details and selects the Pay button, the onSubmit method in your ComponentCallback class is called, passing the paymentComponentJson object.\n\n\nPass the paymentComponentJson object to your server.\n\n\nFrom your server, make a POST  \/payments request including the following\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe\u00a0currency\u00a0and\u00a0value\u00a0of the payment, in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod\n\nThe complete paymentComponentData.paymentMethod object from your client app that includes the payment method details and other required information.\n\n\npaymentMethod.sdkData\n\nThe object that includes information collected by the Component to track the user's payment journey, including information like the checkout attempt identifier. This is required to use the Checkout dashboard that lets you analyze your checkout performance.\n\n\nreturnUrl\n\nIn case of a redirection, this is the URL to where your shopper is redirected after they complete the payment. Maximum length: 1024 characters. Get this URL from the RedirectComponent.getReturnUrl(context).\n\n\n\n  applicationInfo\n\n\nIf you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, refer to our payment method integration guides.\nUsing our risk management features. For more information, see Required risk fields.\nNative 3D Secure 2 authentication.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\n\n\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\n\nError handling\nIf the  \/payments request fails, show the error to the shopper in your client UI.Handle the additional action\n\n    \n        Client app\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\n\nImplement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding payment method guide for it.\n\nWhen you get the action object in the response, do the following:\n\nPass the full action object from your server to the Component.\nUse ActionResponse.SERIALIZER to serialize the action object.\nReturn the serialized object to The Component.\nThe Component handles the additional action on the client side.\nYou handle the payment data, depending on the type of action (action.type).\n\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\nRedirect action\nWhen the  \/payments response includes action.type: redirect, the Component redirects your shopper to another website or app to complete the payment.\n\n\nAdd an IntentFilter to your Activity that handles redirects.\n\n\n\nThe android:host value is your package name at build time. This must match the returnUrl from the  \/payments request.\nTo get your returnUrl from the Component, you can use the RedirectComponent.getReturnUrl(context) function.\n\n\nPass the full action object from your server to the Component.\n\n\nThe Component redirects the shopper to another website or app.\n\n\nThe shopper returns to your app.\n\n\nFrom your Activity, get the result of the redirect.\n\n\nPass the Intent to the the Component. Depending on your activity's launch mode, you get the intent in either onCreate or onNewIntent.\n\n\n\n\n\nThe Component notifies you through the ComponentCallback.onAdditionalDetails method with the actionComponentData object from intent.data.\n\n\nPass the actionComponentData object from your client app to your server.\n\n\nSend additional payment details.\n\nIf the shopper fails to return to your app, you do not get the additional data to send. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\n3D Secure 2 authentication action\nWhen the  \/payments response includes action.type: threeDS2, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.\n\nThe Component handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.\nThe Component calls the onAdditionalDetails method in your ComponentCallback class.\nFrom onAdditionalDetails, get the actionComponentJson object.\nPass the actionComponentJson object from your client app to your server.\nSend additional payment details.\n\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must use a QR code to complete the payment.\n\nThe Component shows the QR code to the shopper.\nWhen the shopper uses the QR code to complete the payment, the Component calls the onAdditionalDetails method in your ComponentCallback class.\nFrom onAdditionalDetails, get the actionComponentJson object.\nPass the actionComponentJson object from your client app to your server.\nSend additional payment details.\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.\n\nThe Component shows a different UI in an overlay.\nThe shopper uses the UI overlay to complete the payment.\nThe Component calls the onAdditionalDetails method in your ComponentCallback class.\nFrom onAdditionalDetails, get the actionComponentJson object.\nPass the actionComponentJson object from your client app to your server.\nSend additional payment details.\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\nThe Component shows the voucher to the shopper.\nWhen the shopper completes the additional action with the voucher (for example: saving it to their digital wallet or forwarding it to their email), The Component calls the onAdditionalDetails method in your ComponentCallback class.\nFrom onAdditionalDetails, get the actionComponentJson object.\nPass the actionComponentJson object from your client app to your server.\nSend additional payment details.\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.\n\nThe Component shows the instructions for the additional action to complete the payment.\nThe shopper does the additional action.\nThe Component calls the onAdditionalDetails method in your ComponentCallback class.\nFrom onAdditionalDetails, get the actionComponentJson object.\nPass the actionComponentJson object from your client app to your server.\nSend additional payment details.\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details to Adyen.\n\n\nPass the full actionComponentJson object to your server.\n\n\nFrom your server, make a POST  \/payments\/details request including the full data from the actionComponentJson object.\n\n\n\n\n\nPass the  \/payments\/details response from your server to your client app.\n\n\n\n\n\n\n\nGet the payment outcome\nAfter the Component finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client app\n    \n\n\nUse the \n  resultCode\n to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. Use the Adyen Android test cards app to access, copy, and autofill card details from within your Android device. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account. Review the process to start accepting payments on Get started with Adyen.\nAssess your PCI DSS compliance by submitting the Self-Assessment Questionnaire-A.\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nLoad  from one of our live environments and set the environment to match your live endpoints:\n\n\n\nEndpoint region\nValue\n\n\n\n\nEurope (EU) live\nEUROPE\n\n\nUnited States (US) live\nUNITED_STATES\n\n\nAustralia (AU) live\nAUSTRALIA\n\n\nAsia Pacific &amp; Southeast (APSE) live\nAPSE\n\n\nIndia (IN) live\nINDIA\n\n\n\n\nNext steps\n\nrequiredModify paymentsFind out how to cancel, refund, or capture a payment using our API.Add payment methodsLearn about payment methods and how to add them to your account.TokenizationSave shopper payment details for later payments.3D Secure authenticationComply with regulations such as PSD2 SCA in Europe.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["Android","Components"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=Android&integration=API only","title":"Android API only","content":"API only\nCreate your own client-side UI and use our API endpoints to get the list of available payment methods and submit a payment.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nFull control of styling on your checkout page\nYour own UI elements\nCreating your own client-side logic\n\nHandling secure card data and authentication\nYou must ensure that your integration complies with regulatory requirements such as PCI DSS and PSD2 SCA.\nWe recommend that you use our pre-built client-side solutions to securely do the following:\n\nCollect, validate, and encrypt card details: Implement our solution to handle encrypted card data with your custom UI and comply with PCI DSS regulations.\nAuthenticate transactions with 3D Secure 2: Handle the 3D Secure 2 authentication action using our solution and comply with PSD2 SCA regulations for online payments.\nWith an API-only integration, you create your own UI, implement your own client-side logic, and use our API to send and receive payment data. You have full control over the look and feel of your checkout page.\nTo reduce your development time and resources, you can use one of our pre-built UI options (Drop-in\/Components) instead.Requirements\nBefore you build your integration, take into account the following requirements and preparations.\n\n\n\nRequirement\nDescription\n\n\n\n\nAPI credential roles\nMake sure that you have the following role: Checkout webservice role\n\n\nCustomer Area roles\nMake sure that you have one of the following roles: Merchant admin role Manage API credentials\n\n\nWebhooks\nSubscribe to the following webhook: Standard webhooks\n\n\nLimitations\nYour PCI compliance assesment determines your integration options for card payments.For 3D Secure 2 authentication for shoppers using Chrome, your cookies must use the SameSite attribute. \n\n\nSetup steps\nBefore you begin: Create your Adyen test accountGet your API key.Get your client key.Set up webhooks.If you want to process payments using raw card data, contact your Adyen Account Manager to confirm that you are eligible.\n\n\nHow it works\nFor an API-only integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details.\nYour client: shows your custom UI where the shopper makes the payment. Passes data to and receives data from your payment server to handle the payment flow and additional actions on your client.\nYour webhook server: receives webhooks that include the outcome of each payment.\n\nIntegration steps\nThe parts of your integration work together to handle the payment flow:\n\nFrom your server, make an API request to get a list of payment methods available to the shopper.\nShow the payment form to collect the shopper's payment details in your UI.\nFrom your server, make a payment request with the data that you have collected from the shopper.\nFor some payment methods, you use your client to handle the additional action that your shopper must do. For example, you redirect your shopper to another website or show a QR code that the shopper uses to complete the payment.\nFrom your server, send additional payment details.\nGet the payment outcome.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client website or app\n    Go to the integration steps for your client.\n        Webhook server\n    Go to the integration steps for your webhook server.\nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.\n\n\nFrom your server, make a\u00a0POST  \/paymentMethods request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nAn object with the following parameters: currency: The three-character ISO currency code.value: The value of the payment in minor units.\n\n\nchannel\n\nAndroid\n\n\ncountryCode\n\nThe shopper's country\/region. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nLanguage and country code. This is used to translate the payment methods names in the response.  Default value: en-US.\n\n\n\nThe information that you include is used to filter the list of available payment methods.\n\n\n\nThe response includes the list of available payment methods, in the paymentMethods object. The payment methods are ordered by popularity in the shopper's country. For each payment method, the response contains:\n\n\n\nParameter name\nDescription\n\n\n\n\nname\nThe name of the payment method that you can show in your payment form.\n\n\ntype\nThe unique payment method code. You must include this when you make a payment.\n\n\n\n\n\n\n\n\nPass the list of available payment methods and the required input fields for each payment method to your client.\n\nBuild your payment form\n\n    \n        Client website or app\n    \n\n\nCreate your payment form where the shopper enters their information. We recommend that you collect commonly-used shopper information in your payment form to process a transactions, depending on your type of business.\n\nSome payment methods require you to collect, or optionally accept, additional information that you include in the payment request. For the additional information you must collect in your payment form for an individual payment method, go to our API-only guide for the individual payment method.\nWe provide payment method and issuer logos that you can download and use in your payment form.\nCredit and debit card details\nBecause governing bodies and organizations regulate the handling of credit and debit card information strictly, you must make sure that you are compliant when collecting card details. When a shopper selects to pay with a card, use the integration option that corresponds to your level of PCI compliance:\n\n(Recommended) Adyen's Custom Card Component with encryption: our pre-built UI with logic to securely encrypt and handle payment card data.\nYour own UI and logic to collect and handle raw card data: before you build an integration that collects raw credit and debit card data, you must assess your PCI compliance according to the most extensive self-assessment form and contact your Adyen Account Manager to confirm that you are eligible.\n\nInformation in the payment form\nAfter collecting information in your payment form, you must add it to corresponding API parameters that you include in the payment request.\nFor example, for commonly-used information:\n\n\n\nField in the payment form\nAPI request parameter\n\n\n\n\nFirst name\nshopperName.firstName\n\n\nLast name\nshopperName.lastName\n\n\nEmail address\nshopperEmail\n\n\nBilling address (multiple fields)\nbillingAddress (object)\n\n\nShipping address (multiple fields)\ndeliveryAddress (object)\n\n\nPhone number\ntelephoneNumber\n\n\n\n    \n    \n        \n            \n            \n                                    Downloading logos\n                            \n        \n        \n            \nIf you are building your own UI, we provide payment method and issuing bank logos that you can use on your checkout page. The images are available in PNG format with different sizes and screen resolutions and in SVG format.\nIf you cannot find a payment method or issuer logo, contact our Support Team.\nPayment method logos\nDownload the images from the links below, specifying:\n\n\nimg-size: Specify the size for PNG format. Use the following values:\n\nsmall: Image size 40x26 pixels\nmedium: Image size 77x50 pixels\nlarge: Image size 154 x 100 pixels\n\n\n\nsuffix: Specify the image density for PNG format. If not specified, the images will have the same size as the img-size.  Append any of the following values:\n\n@2x\n@3x\n-ldpi\n-hdpi\n-xhdpi\n-xxhdpi\n-xxxhdpi\n\n\n\npm-type: The paymentMethods.type returned in the \/paymentMethods response. For example, googlepay or primeiropay_boleto.\nFor cards, the values you should use are specified under brands with type: scheme. For example, mc, visa, and amex. To get a generic card logo, set pm-type to card.\n\n\nDownload link for SVG:\n\n    \n\nDownload link for PNG:\n\n    \n\nExamples:\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/mc.svg\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/large\/googlepay@2x.png\nIssuing bank logos\nSome payment methods such as iDEAL present a list of issuing banks to the shopper.\nDownload the issuing bank logos from the links below, specifying:\n\n\nimg-size: Specify the size for PNG format. Use the following values:\n\nsmall: Image size 40x26 pixels\nmedium: Image size 77x50 pixels\nlarge: Image size 154 x 100 pixels\n\n\n\nsuffix: Specify the image density for PNG format. If not specified, the images will have the same size as the img-size.  Append any of the following values:\n\n@2x\n@3x\n-ldpi\n-hdpi\n-xhdpi\n-xxhdpi\n-xxxhdpi\n\n\n\npm-type: The paymentMethods.type in objects with details.key issuer returned in the \/paymentMethods response. For example, ideal.\n\n\nissuerid: The details.items.id referring to the issuing bank. For example, 1121 and 1151 for iDEAL.\n\n\nDownload link for SVG:\n\n    \n\nDownload link for PNG:\n\n    \n\nExamples:\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/ideal\/1121.svg\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/small\/ideal\/1151-xxhdpi.png\n\n        \n    \n\nMake a payment\n\n    \n        Payment server\n    \n\n\nAfter the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.\n\n\nPass the data from your client to your server.\n\n\nFrom your server, make a POST  \/payments request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nAn object with the following parameters: currency: The three-character ISO currency code.value: The value of the payment in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod.type\n\nThe payment method type. From the \/paymentMethods response, this is the value in paymentMethod.type.\n\n\nreturnUrl\n\nThe URL where the shopper should return to after a redirection. Use the combination of: adyencheckout:\/\/ schemeYour package nameA path.  Example: adyencheckout:\/\/com.adyen.adyen_checkout_example\/adyenPayment  Format: Maximum 1024 characters.If it includes non-ASCII characters, such as spaces or special letters, URL encode it.You can include your own additional query parameters, such as a shopper ID or order reference number.   The URL must not include personally identifiable information (PII), for example name or email address. \n\n\napplicationInfo\n\nIf you are a technology partner, service partner, or system integrator, send information about the application, so that we can offer you more support.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, go to data quality and risk field reference.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\n\n\n\n\n\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\nHandle the additional action\n\n    \n        Client website or app\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\n\nImplement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding payment method guide for it.\n\nHow you handle the action depends on the action type (action.type):\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\nRedirect action\nWhen the  \/payments response includes action.type redirect, redirect the shopper to another site to complete the payment.\nHow you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.\n\n\n    \n        \n        \n    \n\n\n3D Secure 2 authentication action\nWhen the  \/payments response includes action.type: threeDS2Fingerprint or threeDS2Challenge, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow. Use one of our 3D Secure 2 solutions to handle the action.\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must scan a QR code to complete the payment.\n\n    \n\n\n\nFrom the  \/payments response, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\naction.qrCodeData\nContains the URL for the QR code.\n\n\n\n\n\nGet the qrCodeData from the action object. This parameter contains a URL for the QR code.\n\n\nShow the QR code to the shopper.\n\n\nThe shopper scans the QR code.\n\n\nSend additional payment details to finish the payment flow.\n\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.\n\n    \n\n\n\nFrom the  \/payments response, get the following from the action object:\n\n\n\nParameter\nDescription\n\n\n\n\nsdkData\nThe data that you must pass to the SDK.\n\n\n\n\n\nPass the data from the sdkData object to the SDK.\n\n\nThe shopper uses the SDK to finish the payment.\n\n\nGet the result from the SDK.\n\n\nSend additional payment details to finish the payment flow.\n\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\n    \n\n\n\nThe data included in the  \/payments response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\nexpiresAt\nThe date when the voucher expires.\n\n\ninitialAmount\nThe payment amount and currency.\n\n\nmerchantName\nThe name of your shop.\n\n\ninstructionsUrl\nThe URL where you shopper can get additional information and instructions about how to pay.\n\n\n\n\n\nShow voucher information to the shopper that your shopper uses to pay outside of your client.\n\n\nSend additional payment details to finish the payment flow.\n\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.\n\n    \n\n\n\nFrom the  \/payments response, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\naction.paymentData\nAdditional payment data.\n\n\n\n\n\nThe shopper finishes the additional action for the payment.\n\n\nSend additional payment details to finish the payment flow.\n\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details.\n\nFor redirects: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding webhook message for the outcome of the payment.\n\nFrom your server, make a POST  \/payments\/details request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the API-only page for the individual payment method .\n\n    \n\nThe response includes information about the current payment status.\n\n    \n\n\n    \nGet the payment outcome\nAfter the shopper finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client website or app\n    \n\n\nUse the \n  resultCode\n to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \nError handling\nIn case you encounter errors in your integration, refer to the following:\n\nAPI error codes: If you receive a non-HTTP 200 response, use the errorCode to troubleshoot and modify your request.\nPayment refusals: If you receive an HTTP 200 response with an Error or Refused resultCode, check the refusal reason and, if possible, modify your request.\nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account.\nAssess your PCI DSS compliance by submitting:\n\nthe Self-Assessment Questionnaire-A, if you are using the Custom Card Component.\nthe Self-Assessment Questionnaire-D, if you are submitting raw card data.\n\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nrequiredSet up notificationsReceive confirmation when a payment is authorised or fails.requiredAdd payment methodsLearn about payment methods and how to add them to your account.Payment modificationsFind out how to cancel, refund, or capture a payment using our API.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["Android","API only"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=React Native&integration=Drop-in","title":"React Native Drop-in","content":"React Native Drop-in\nRender a list of available payment methods anywhere in your app.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nLowest development time to integrate payment methods\nUI styling customization for the list of payment methods\nAdding payment methods to the list requires no extra development time\n3D Secure 2 support built in\nDrop-in is our pre-built UI solution for accepting payments in your app. Drop-in shows all payment methods as a list, in the same block. Your server makes API requests to the  \/paymentMethods,  \/payments, and  \/payments\/details endpoints.\nRequirements\nBefore you begin to integrate, make sure you have followed the Get started with Adyen guide to:\n\nGet an overview of the steps needed to accept live payments.\nCreate your test account.\n\nAfter you have created your test account:\n\nGet your API key.\nGet your client key.\nSet up webhooks to know the payment outcome.\nHow it works\nFor a Drop-in integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details. \n\nYour client  app: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  app. \nYour webhook server: receives webhooks that include the outcome of each payment.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client app\n    Go to the integration steps for your client  app.\n        Webhook server\n    Go to the integration steps for your webhook server.\n\nThe parts of your integration work together to complete the payment flow:\n\nThe shopper goes to the checkout page.\nYour server uses the shopper's country and currency information from your client to get available payment methods.\nDrop-in shows the available payment methods,  collects the shopper's payment details, handles additional actions, and shows the payment result to the shopper.\nYour webhook server receives the notification containing the payment outcome.\n\n\nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.\nFrom your server, make a\u00a0POST  \/paymentMethods request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.\n\nWe use the optional parameters to tailor the list of available payment methods to your shopper.\n\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe currency of the payment and its value in minor units.\n\n\nchannel\n\nThe platform where the payment is taking place. For example, when you set this to iOS, Adyen returns only the payment methods available for iOS.\n\n\ncountryCode\n\nThe shopper's country\/region. Adyen returns only the payment methods available in this country. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nBy default, the shopperlocale is set to en-US. To change the language, set this to the shopper's language and country code. The front end also uses this locale.\n\n\n\nFor example, to get the available payment methods for a shopper in the Netherlands, for a payment of EUR&nbsp;10:\n\n    \n\nThe response includes the list of available paymentMethods:\n\n    \n\nPass the response to your client app. Use this in the next step to show available payment methods to the shopper.Add Adyen Drop-in to your app\n\n    \n        Client app\n    \n\n\n1. Add Adyen React Native to your project\n\n    \n\n2. Install\n\n\n    \n        \n        \n    \n\n3. Create a configuration object\nCreate a configuration object with the following properties:\n\n\n\nParameter\nRequired\nDescription\n\n\n\n\nenvironment\n\nUse test. When you're ready to accept live payments, change the value to one of our live environments.\n\n\nclientKey\n\nA public key linked to your API credential, used for client-side authentication.\n\n\nreturnUrl\n\nFor iOS, this is the URL to your app, where the shopper should return, after a redirection. Maximum of 1024 characters. For more information on setting a custom URL scheme for your app, read the Apple Developer documentation.  For Android, this value is automatically overridden by AdyenCheckout.\n\n\ncountryCode\nIf you want to show the amount on the Pay button.\nThe shopper's country\/region. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\namount\nIf you want to show the amount on the Pay button.\nThe\u00a0currency\u00a0and\u00a0value\u00a0of the payment, in minor units.\n\n\n\n\nFor example: \n\n    \n\nTo add configuration for specific payment methods, add these in a payment method specific configuration object. For example, for Apple Pay:\n\n    \n\nOptional configuration\nOptionally, you can configure the following properties for Drop-in.\n\n\n\nParameter\nDescription\n\n\n\n\nshowPreselectedStoredPaymentMethod\nWhen enabled, shows the preselected stored payment method view. Defaults to true.\n\n\nskipListWhenSinglePaymentMethod\nSet to true to skip showing the payment methods list when only one non-instant payment method is available. Defaults to false.\n\n\ntitle     Only for iOS\nSet a custom title for the pre-selected stored payment view. By default, the app's name is used.\n\n\nshowRemovePaymentMethodButton\nAllows the shopper to remove a stored payment method. Defaults to false. When enabled, you must also implement the onDisableStoredPaymentMethod callback.\n\n\nonDisableStoredPaymentMethod(storedPaymentMethod, resolve, reject) =&gt; {}\nCalled when a shopper removes a stored payment method. To remove the selected payment method, make a DELETE storedPaymentMethods request using the storedPaymentMethodId. Then call either resolve() or reject(), depending on the  \/storedPaymentMethods\/{storedPaymentMethodId} response.\n\n\n\nFor example:\n\n    \n\n4. Initialize Drop-in\n\nConfigure AdyenCheckout, setting the following:\n\n\n\n\nParameter\nDescription\n\n\n\n\nconfig\nYour configuration object.\n\n\npaymentMethods\nThe full response from the  \/paymentMethods endpoint.\n\n\nonSubmit\nCallback that uses data to make a  \/payments request when the shopper selects the Pay button and the payment details are valid.\n\n\nonAdditionalDetails\nCallback that uses data to make a  \/payments\/details request when a payment requires additional details, for example to authenticate with 3D Secure or to pay using a QR code.\n\n\nonError\nCallback that handles errors.\n\n\n\nIn your onSubmit, onAdditionalDetails, and onError callbacks, you must call component.hide(result) to dismiss the payment UI when the API request is completed and the payment result is known.\n\nSet AdyenCheckout as the context for your \n  View\n.\n\nFor example:\n\n    \n\n\nCreate a way, like a button, for AdyenCheckout to call the start function.\n\n\n    \n\nThe context starts Adyen's Native Component for Drop-in.\nMake a payment\n\n    \n        Payment server\n    \n\n\nWhen the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, the Native Component calls onSubmit, and you must make a payment request to Adyen.\n\n\nPass the data from onSubmit to your server.\n\n\nFrom your server, make a POST  \/payments request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe currency of the payment and its value in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod\n\nThe complete paymentMethod object from your client app. It includes the payment method details and other required information.\n\n\npaymentMethod.sdkData\n\nThe object that includes information collected by the Component to track the user's payment journey, including information like the checkout attempt identifier. This is required to use the Checkout dashboard that lets you analyze your checkout performance.\n\n\nreturnUrl\n  For Android, this value is automatically overridden by AdyenCheckout.\nFor iOS, this is the URL to your app, where the shopper should return, after a redirection. Maximum of 1024 characters. For more information on setting a custom URL scheme for your app, read the Apple Developer documentation.   If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value.   The URL must not include personally identifiable information (PII), for example name or email address. \n\n\n\n  applicationInfo\n\n\nIf you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to Building Adyen solutions.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, see Required risk fields.\nNative 3D Secure 2 authentication.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\n\n\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\n\nErrors\nIf an error occurs, you get an error object from the onError callback with one of the following error codes:\n\n\n\nError code\nDescription\nAction to take\n\n\n\n\ncanceledByShopper\nThe shopper canceled the payment.\nTake the shopper back to the checkout page.\n\n\nnotSupported\nThe payment method isn't supported by the shopper's device.\nTell the shopper that the payment method isn't supported by their device.\n\n\nnoClientKey\nNo clientKey configured.\nTell the shopper that an error occurred.\n\n\nnoPayment\nNo payment information configured.\nTell the shopper that an error occurred.\n\n\ninvalidPaymentMethods\nCan't parse the paymentMethods list, or the list is empty.\nTell the shopper that an error occurred.\n\n\nnoPaymentMethod\nCan't find the selected payment method.\nTell the shopper that their selected payment method is currently unavailable.\n\n\nHandle the additional action\n\n    \n        Client app\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\n\nImplement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding payment method guide for it.\n\nTo handle these additional front-end actions, the AdyenCheckout provides a handle function.\n\n\nCall handle from one of Adyen's Native Components and pass the action to it. For example:\n\n\n\n\n\nThe Native Component performs the additional action on the client side.\n\n\nYou handle the payment data, depending on the value of action.type.\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\n\n\nRedirect action\nWhen the  \/payments response includes action.type redirect, Drop-in redirects your shopper to another website to complete the payment.\n\nWhen the shopper returns to your app, Drop-in calls the onAdditionalDetails event.\nPass the data object from the didProvide method to your server.\n\nSend additional payment details.\n\nIf the shopper fails to return to your app, you do not get the additional data to send. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\n3D Secure 2 authentication action\nWhen the  \/payments response includes action.type: threeDS2, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.\n\nDrop-in handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.\nDrop-in calls the onAdditionalDetails event.\nPass the data object from the didProvide method to your server.\nSend additional payment details.\n\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must use a QR code to complete the payment.\n\nDrop-in shows the QR code to the shopper.\nWhen the shopper uses the QR code to complete the payment, Drop-in calls the onAdditionalDetails event.\nPass the data object from the didProvide method to your server.\nSend additional payment details.\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.\n\nDrop-in shows a different UI in an overlay.\nThe shopper uses the UI overlay to complete the payment.\nDrop-in calls the onAdditionalDetails event.\nPass the data object from the didProvide method to your server.\nSend additional payment details.\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\nDrop-in shows the voucher to the shopper.\nWhen the shopper completes the additional action with the voucher (for example: saving it to their digital wallet or forwarding it to their email), Drop-in calls the onAdditionalDetails event.\nPass the data object from the didProvide method to your server.\nSend additional payment details.\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.\n\nDrop-in shows the instructions for the additional action to complete the payment.\nThe shopper does the additional action.\nDrop-in calls the onAdditionalDetails event.\nPass the data object from the didProvide method to your server.\nSend additional payment details.\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details.\n\nFor redirects: if the shopper fails to return to your app, you do not get additional payment details to send. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\nPass the full data object from the didProvide method to your server.\n\n\nFrom your server, make a POST  \/payments\/details request including the full data object.\n\n\n\n\n\nPass the  \/payments\/details response from your server to your client app.\n\n\n\n\n\n\n\nGet the payment outcome\nAfter Drop-in finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client app\n    \n\n\nUse the \n  resultCode\n to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account. Review the process to start accepting payments on Get started with Adyen.\nAssess your PCI DSS compliance by submitting the Self-Assessment Questionnaire-A.\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\nLoad Drop-in from one of our live environments and set the environment to match your live endpoints:\n\n\n\n\nEndpoint region\nenvironment value\n\n\n\n\nEurope\nlive-eu\n\n\nAustralia\nlive-au\n\n\nUS\nlive-us\n\n\nNext steps\n\nrequiredModify paymentsFind out how to cancel, refund, or capture a payment using our API.Add payment methodsLearn about payment methods and how to add them to your account.TokenizationSave shopper payment details for later payments.3D Secure authenticationComply with regulations such as PSD2 SCA in Europe.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["React Native","Drop-in"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=React Native&integration=Components","title":"React Native Components","content":"React Native Components\nRender individual payment methods anywhere in your app.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nLow development time to integrate each payment method component\nUI styling customization for each payment method\nFlexibility to add payment method components with configuration for each\n3D Secure 2 support using the 3D Secure 2 Component\nComponents are our pre-built UI solution for accepting payments in your app. Each Component renders a payment method you can render anywhere in your app. Your server makes API requests to the  \/paymentMethods,  \/payments, and  \/payments\/details endpoints.\nRequirements\nBefore you begin to integrate, make sure you have followed the Get started with Adyen guide to:\n\nGet an overview of the steps needed to accept live payments.\nCreate your test account.\n\nAfter you have created your test account:\n\nGet your API key.\nGet your client key.\nSet up webhooks to know the payment outcome.\nHow it works\nFor a Components integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details. \n\nYour client  app: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client  app. \nYour webhook server: receives webhooks that include the outcome of each payment.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client app\n    Go to the integration steps for your client  app.\n        Webhook server\n    Go to the integration steps for your webhook server.\n\nThe parts of your integration work together to complete the payment flow:\n\nThe shopper goes to the checkout page.\nYour server uses the shopper's country and currency information from your client to get available payment methods.\nThe Component collects the shopper's payment details, handles additional actions, and shows the payment result to the shopper.\nYour webhook server receives the notification containing the payment outcome.\n\n\nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.\nFrom your server, make a\u00a0POST  \/paymentMethods request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.\n\nWe use the optional parameters to tailor the list of available payment methods to your shopper.\n\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe currency of the payment and its value in minor units.\n\n\nchannel\n\nThe platform where the payment is taking place. For example, when you set this to iOS, Adyen returns only the payment methods available for iOS.\n\n\ncountryCode\n\nThe shopper's country\/region. Adyen returns only the payment methods available in this country. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nBy default, the shopperlocale is set to en-US. To change the language, set this to the shopper's language and country code. The front end also uses this locale.\n\n\n\nFor example, to get the available payment methods for a shopper in the Netherlands, for a payment of EUR&nbsp;10:\n\n    \n\nThe response includes the list of available paymentMethods:\n\n    \n\nPass the response to your client app. Use this in the next step to show available payment methods to the shopper.Add Adyen Components to your app\n1. Add Adyen React Native to your project\n$ yarn add @adyen\/react-native\n2. Install\n\n\n    \n        \n        \n    \n\n3. Create a configuration object\nCreate a configuration object with the following properties:\n\n\n\nParameter\nRequired\nDescription\n\n\n\n\nenvironment\n\nUse test. When you're ready to accept live payments, change the value to one of our live environments.\n\n\nclientKey\n\nA public key linked to your API credential, used for client-side authentication.\n\n\nreturnUrl\n\nFor iOS, this is the URL to your app, where the shopper should return, after a redirection. Maximum of 1024 characters. For more information on setting a custom URL scheme for your app, read the Apple Developer documentation.  For Android, this value is automatically overridden by AdyenCheckout.\n\n\ncountryCode\nIf you want to show the amount on the Pay button.\nThe shopper's country\/region. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\namount\nIf you want to show the amount on the Pay button.\nThe\u00a0currency\u00a0and\u00a0value\u00a0of the payment, in minor units.\n\n\n\n\nFor example: \n\n    \n\nTo add configuration for specific payment methods, add these in a payment method specific configuration object. For example, for Apple Pay:\n\n    \n\n4. Initialize Components\n\nConfigure AdyenCheckout, setting the following:\n\n\n\n\nParameter\nDescription\n\n\n\n\nconfig\nYour configuration object.\n\n\npaymentMethods\nThe full response from the  \/paymentMethods endpoint.\n\n\nonSubmit\nCallback that uses data to make a  \/payments request when the shopper selects the Pay button and the payment details are valid.\n\n\nonAdditionalDetails\nCallback that uses data to make a  \/payments\/details request when a payment requires additional details, for example to authenticate with 3D Secure or to pay using a QR code.\n\n\nonError\nCallback that handles errors.\n\n\n\nIn your onSubmit, onAdditionalDetails, and onError callbacks, you must call component.hide(result) to dismiss the payment UI when the API request is completed and the payment result is known.\n\nSet AdyenCheckout as the context for your View.\n\nFor example:\n\n    \n\n\nCreate a way, like a button, for AdyenCheckout to call the start function.\n\n\n    \n\nThe context starts Adyen's Native Component for the corresponding payment method.\nMake a payment\n\n    \n        Payment server\n    \n\n\nWhen the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, the Native Component calls onSubmit, and you must make a payment request to Adyen.\n\n\nPass the data from onSubmit to your server.\n\n\nFrom your server, make a POST  \/payments request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe currency of the payment and its value in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod\n\nThe complete paymentMethod object from your client app. It includes the payment method details and other required information.\n\n\npaymentMethod.sdkData\n\nThe object that includes information collected by the Component to track the user's payment journey, including information like the checkout attempt identifier. This is required to use the Checkout dashboard that lets you analyze your checkout performance.\n\n\nreturnUrl\n  For Android, this value is automatically overridden by AdyenCheckout.\nFor iOS, this is the URL to your app, where the shopper should return, after a redirection. Maximum of 1024 characters. For more information on setting a custom URL scheme for your app, read the Apple Developer documentation.   If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value.   The URL must not include personally identifiable information (PII), for example name or email address. \n\n\napplicationInfo\n\nIf you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to Building Adyen solutions.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, see Required risk fields.\nNative 3D Secure 2 authentication.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\n\n\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\n\nErrors\nIf an error occurs, you get an error object from the onError callback with one of the following error codes:\n\n\n\nError code\nDescription\nAction to take\n\n\n\n\ncanceledByShopper\nThe shopper canceled the payment.\nTake the shopper back to the checkout page.\n\n\nnotSupported\nThe payment method isn't supported by the shopper's device.\nTell the shopper that the payment method isn't supported by their device.\n\n\nnoClientKey\nNo clientKey configured.\nTell the shopper that an error occurred.\n\n\nnoPayment\nNo payment information configured.\nTell the shopper that an error occurred.\n\n\ninvalidPaymentMethods\nCan't parse the paymentMethods list, or the list is empty.\nTell the shopper that an error occurred.\n\n\nnoPaymentMethod\nCan't find the selected payment method.\nTell the shopper that their selected payment method is currently unavailable.\n\n\nHandle the additional action\n\n    \n        Client app\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\n\nImplement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding payment method guide for it.\n\nTo handle these additional front-end actions, the AdyenCheckout provides a handle function.\n\n\nCall handle from one of Adyen's Native Components and pass the action to it. For example:\n\n\n\n\n\nThe Native Component performs the additional action on the client side.\n\n\nYou handle the payment data, depending on the value of action.type.\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\n\n\nRedirect action\nWhen the  \/payments response includes action.type redirect, the Component redirects your shopper to another website to complete the payment.\n\nWhen the shopper returns to your app, the Component calls the onAdditionalDetails event.\nPass the data object from the didProvide method to your server.\n\nSend additional payment details.\n\nIf the shopper fails to return to your app, you do not get the additional data to send. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\n3D Secure 2 authentication action\nWhen the  \/payments response includes action.type: threeDS2, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow.\n\nThe Component handles 3D Secure 2 authentication. If a challenge is required, the shopper performs the authentication challenge to complete the payment.\nThe Component calls the onAdditionalDetails event.\nPass the data object from the didProvide method to your server.\nSend additional payment details.\n\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must use a QR code to complete the payment.\n\nThe Component shows the QR code to the shopper.\nWhen the shopper uses the QR code to complete the payment, the Component calls the onAdditionalDetails event.\nPass the data object from the didProvide method to your server.\nSend additional payment details.\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.\n\nThe Component shows a different UI in an overlay.\nThe shopper uses the UI overlay to complete the payment.\nThe Component calls the onAdditionalDetails event.\nPass the data object from the didProvide method to your server.\nSend additional payment details.\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\nThe Component shows the voucher to the shopper.\nWhen the shopper completes the additional action with the voucher (for example: saving it to their digital wallet or forwarding it to their email), the Component calls the onAdditionalDetails event.\nPass the data object from the didProvide method to your server.\nSend additional payment details.\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.\n\nThe Component shows the instructions for the additional action to complete the payment.\nThe shopper does the additional action.\nThe Component calls the onAdditionalDetails event.\nPass the data object from the didProvide method to your server.\nSend additional payment details.\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details.\n\nFor redirects: if the shopper fails to return to your app, you do not get additional payment details to send. Instead, wait for the corresponding webhook for the outcome of the payment.\n\n\n\nPass the full data object from the didProvide method to your server.\n\n\nFrom your server, make a POST  \/payments\/details request including the full data object.\n\n\n\n\n\nPass the  \/payments\/details response from your server to your client app.\n\n\n\n\n\n\n\nGet the payment outcome\nAfter the Component finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client app\n    \n\n\nUse the resultCode to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account. Review the process to start accepting payments on Get started with Adyen.\nAssess your PCI DSS compliance by submitting the Self-Assessment Questionnaire-A.\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\nLoad Components from one of our live environments and set the environment to match your live endpoints:\n\n\n\n\nEndpoint region\nenvironment value\n\n\n\n\nEurope\nlive-eu\n\n\nAustralia\nlive-au\n\n\nUS\nlive-us\n\n\nNext steps\n\nrequiredModify paymentsFind out how to cancel, refund, or capture a payment using our API.Add payment methodsLearn about payment methods and how to add them to your account.TokenizationSave shopper payment details for later payments.3D Secure authenticationComply with regulations such as PSD2 SCA in Europe.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["React Native","Components"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=React Native&integration=API only","title":"React Native API only","content":"API only\nCreate your own client-side UI and use our API endpoints to get the list of available payment methods and submit a payment.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nFull control of styling on your checkout page\nYour own UI elements\nCreating your own client-side logic\n\nHandling secure card data and authentication\nYou must ensure that your integration complies with regulatory requirements such as PCI DSS and PSD2 SCA.\nWe recommend that you use our pre-built client-side solutions to securely do the following:\n\nCollect, validate, and encrypt card details: Implement our solution to handle encrypted card data with your custom UI and comply with PCI DSS regulations.\nAuthenticate transactions with 3D Secure 2: Handle the 3D Secure 2 authentication action using our solution and comply with PSD2 SCA regulations for online payments.\nWith an API-only integration, you create your own UI, implement your own client-side logic, and use our API to send and receive payment data. You have full control over the look and feel of your checkout page.\nTo reduce your development time and resources, you can use one of our pre-built UI options (Drop-in\/Components) instead.Requirements\nBefore you build your integration, take into account the following requirements and preparations.\n\n\n\nRequirement\nDescription\n\n\n\n\nAPI credential roles\nMake sure that you have the following role: Checkout webservice role\n\n\nCustomer Area roles\nMake sure that you have one of the following roles: Merchant admin role Manage API credentials\n\n\nWebhooks\nSubscribe to the following webhook: Standard webhooks\n\n\nLimitations\nYour PCI compliance assesment determines your integration options for card payments.For 3D Secure 2 authentication for shoppers using Chrome, your cookies must use the SameSite attribute. \n\n\nSetup steps\nBefore you begin: Create your Adyen test accountGet your API key.Get your client key.Set up webhooks.If you want to process payments using raw card data, contact your Adyen Account Manager to confirm that you are eligible.\n\n\nHow it works\nFor an API-only integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details.\nYour client: shows your custom UI where the shopper makes the payment. Passes data to and receives data from your payment server to handle the payment flow and additional actions on your client.\nYour webhook server: receives webhooks that include the outcome of each payment.\n\nIntegration steps\nThe parts of your integration work together to handle the payment flow:\n\nFrom your server, make an API request to get a list of payment methods available to the shopper.\nShow the payment form to collect the shopper's payment details in your UI.\nFrom your server, make a payment request with the data that you have collected from the shopper.\nFor some payment methods, you use your client to handle the additional action that your shopper must do. For example, you redirect your shopper to another website or show a QR code that the shopper uses to complete the payment.\nFrom your server, send additional payment details.\nGet the payment outcome.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client website or app\n    Go to the integration steps for your client.\n        Webhook server\n    Go to the integration steps for your webhook server.\nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.\n\n\nFrom your server, make a\u00a0POST  \/paymentMethods request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nAn object with the following parameters: currency: The three-character ISO currency code.value: The value of the payment in minor units.\n\n\nchannel\n\nThe shopper's device: iOS or Android.\n\n\ncountryCode\n\nThe shopper's country\/region. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nLanguage and country code. This is used to translate the payment methods names in the response.  Default value: en-US.\n\n\n\nThe information that you include is used to filter the list of available payment methods.\n\n\n\nThe response includes the list of available payment methods, in the paymentMethods object. The payment methods are ordered by popularity in the shopper's country. For each payment method, the response contains:\n\n\n\nParameter name\nDescription\n\n\n\n\nname\nThe name of the payment method that you can show in your payment form.\n\n\ntype\nThe unique payment method code. You must include this when you make a payment.\n\n\n\n\n\n\n\n\nPass the list of available payment methods and the required input fields for each payment method to your client.\n\nBuild your payment form\n\n    \n        Client website or app\n    \n\n\nCreate your payment form where the shopper enters their information. We recommend that you collect commonly-used shopper information in your payment form to process a transactions, depending on your type of business.\n\nSome payment methods require you to collect, or optionally accept, additional information that you include in the payment request. For the additional information you must collect in your payment form for an individual payment method, go to our API-only guide for the individual payment method.\nWe provide payment method and issuer logos that you can download and use in your payment form.\nCredit and debit card details\nBecause governing bodies and organizations regulate the handling of credit and debit card information strictly, you must make sure that you are compliant when collecting card details. When a shopper selects to pay with a card, use the integration option that corresponds to your level of PCI compliance:\n\n(Recommended) Adyen's Custom Card Component with encryption: our pre-built UI with logic to securely encrypt and handle payment card data.\nYour own UI and logic to collect and handle raw card data: before you build an integration that collects raw credit and debit card data, you must assess your PCI compliance according to the most extensive self-assessment form and contact your Adyen Account Manager to confirm that you are eligible.\n\nInformation in the payment form\nAfter collecting information in your payment form, you must add it to corresponding API parameters that you include in the payment request.\nFor example, for commonly-used information:\n\n\n\nField in the payment form\nAPI request parameter\n\n\n\n\nFirst name\nshopperName.firstName\n\n\nLast name\nshopperName.lastName\n\n\nEmail address\nshopperEmail\n\n\nBilling address (multiple fields)\nbillingAddress (object)\n\n\nShipping address (multiple fields)\ndeliveryAddress (object)\n\n\nPhone number\ntelephoneNumber\n\n\n\n    \n    \n        \n            \n            \n                                    Downloading logos\n                            \n        \n        \n            \nIf you are building your own UI, we provide payment method and issuing bank logos that you can use on your checkout page. The images are available in PNG format with different sizes and screen resolutions and in SVG format.\nIf you cannot find a payment method or issuer logo, contact our Support Team.\nPayment method logos\nDownload the images from the links below, specifying:\n\n\nimg-size: Specify the size for PNG format. Use the following values:\n\nsmall: Image size 40x26 pixels\nmedium: Image size 77x50 pixels\nlarge: Image size 154 x 100 pixels\n\n\n\nsuffix: Specify the image density for PNG format. If not specified, the images will have the same size as the img-size.  Append any of the following values:\n\n@2x\n@3x\n-ldpi\n-hdpi\n-xhdpi\n-xxhdpi\n-xxxhdpi\n\n\n\npm-type: The paymentMethods.type returned in the \/paymentMethods response. For example, googlepay or primeiropay_boleto.\nFor cards, the values you should use are specified under brands with type: scheme. For example, mc, visa, and amex. To get a generic card logo, set pm-type to card.\n\n\nDownload link for SVG:\n\n    \n\nDownload link for PNG:\n\n    \n\nExamples:\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/mc.svg\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/large\/googlepay@2x.png\nIssuing bank logos\nSome payment methods such as iDEAL present a list of issuing banks to the shopper.\nDownload the issuing bank logos from the links below, specifying:\n\n\nimg-size: Specify the size for PNG format. Use the following values:\n\nsmall: Image size 40x26 pixels\nmedium: Image size 77x50 pixels\nlarge: Image size 154 x 100 pixels\n\n\n\nsuffix: Specify the image density for PNG format. If not specified, the images will have the same size as the img-size.  Append any of the following values:\n\n@2x\n@3x\n-ldpi\n-hdpi\n-xhdpi\n-xxhdpi\n-xxxhdpi\n\n\n\npm-type: The paymentMethods.type in objects with details.key issuer returned in the \/paymentMethods response. For example, ideal.\n\n\nissuerid: The details.items.id referring to the issuing bank. For example, 1121 and 1151 for iDEAL.\n\n\nDownload link for SVG:\n\n    \n\nDownload link for PNG:\n\n    \n\nExamples:\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/ideal\/1121.svg\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/small\/ideal\/1151-xxhdpi.png\n\n        \n    \n\nMake a payment\n\n    \n        Payment server\n    \n\n\nAfter the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.\n\n\nPass the data from your client to your server.\n\n\nFrom your server, make a POST  \/payments request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nAn object with the following parameters: currency: The three-character ISO currency code.value: The value of the payment in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod.type\n\nThe payment method type. From the \/paymentMethods response, this is the value in paymentMethod.type.\n\n\nreturnUrl\n\nThe URL where the shopper should return to after a redirection.  iOS: Use the custom URL scheme for your app. iOS example: com.mydomain.adyencheckout:\/\/  Android: Use the combination of: adyencheckout:\/\/ schemeYour package nameA path.  Android example: adyencheckout:\/\/com.adyen.adyen_checkout_example\/adyenPayment   Format: Maximum 1024 characters.If it includes non-ASCII characters, such as spaces or special letters, URL encode it.You can include your own additional query parameters, such as a shopper ID or order reference number.   The URL must not include personally identifiable information (PII), for example name or email address. \n\n\napplicationInfo\n\nIf you are a technology partner, service partner, or system integrator, send information about the application, so that we can offer you more support.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, go to data quality and risk field reference.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\n\n\n\n\n\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\nHandle the additional action\n\n    \n        Client website or app\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\n\nImplement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding payment method guide for it.\n\nHow you handle the action depends on the action type (action.type):\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\nRedirect action\nWhen the  \/payments response includes action.type redirect, redirect the shopper to another site to complete the payment.\nHow you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.\n\n\n    \n        \n        \n    \n\n\n3D Secure 2 authentication action\nWhen the  \/payments response includes action.type: threeDS2Fingerprint or threeDS2Challenge, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow. Use one of our 3D Secure 2 solutions to handle the action.\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must scan a QR code to complete the payment.\n\n    \n\n\n\nFrom the  \/payments response, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\naction.qrCodeData\nContains the URL for the QR code.\n\n\n\n\n\nGet the qrCodeData from the action object. This parameter contains a URL for the QR code.\n\n\nShow the QR code to the shopper.\n\n\nThe shopper scans the QR code.\n\n\nSend additional payment details to finish the payment flow.\n\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.\n\n    \n\n\n\nFrom the  \/payments response, get the following from the action object:\n\n\n\nParameter\nDescription\n\n\n\n\nsdkData\nThe data that you must pass to the SDK.\n\n\n\n\n\nPass the data from the sdkData object to the SDK.\n\n\nThe shopper uses the SDK to finish the payment.\n\n\nGet the result from the SDK.\n\n\nSend additional payment details to finish the payment flow.\n\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\n    \n\n\n\nThe data included in the  \/payments response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\nexpiresAt\nThe date when the voucher expires.\n\n\ninitialAmount\nThe payment amount and currency.\n\n\nmerchantName\nThe name of your shop.\n\n\ninstructionsUrl\nThe URL where you shopper can get additional information and instructions about how to pay.\n\n\n\n\n\nShow voucher information to the shopper that your shopper uses to pay outside of your client.\n\n\nSend additional payment details to finish the payment flow.\n\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.\n\n    \n\n\n\nFrom the  \/payments response, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\naction.paymentData\nAdditional payment data.\n\n\n\n\n\nThe shopper finishes the additional action for the payment.\n\n\nSend additional payment details to finish the payment flow.\n\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details.\n\nFor redirects: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding webhook message for the outcome of the payment.\n\nFrom your server, make a POST  \/payments\/details request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the API-only page for the individual payment method .\n\n    \n\nThe response includes information about the current payment status.\n\n    \n\n\n    \nGet the payment outcome\nAfter the shopper finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client website or app\n    \n\n\nUse the \n  resultCode\n to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \nError handling\nIn case you encounter errors in your integration, refer to the following:\n\nAPI error codes: If you receive a non-HTTP 200 response, use the errorCode to troubleshoot and modify your request.\nPayment refusals: If you receive an HTTP 200 response with an Error or Refused resultCode, check the refusal reason and, if possible, modify your request.\nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account.\nAssess your PCI DSS compliance by submitting:\n\nthe Self-Assessment Questionnaire-A, if you are using the Custom Card Component.\nthe Self-Assessment Questionnaire-D, if you are submitting raw card data.\n\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nrequiredSet up notificationsReceive confirmation when a payment is authorised or fails.requiredAdd payment methodsLearn about payment methods and how to add them to your account.Payment modificationsFind out how to cancel, refund, or capture a payment using our API.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["React Native","API only"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=Flutter&integration=Drop-in","title":"Flutter Drop-in","content":"Flutter Drop-in\nRender a list of available payment methods anywhere in your app.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nLow development time to integrate payment methods\nUI styling customization for the list of payment methods\nAdding payment methods to the list requires no extra development time\n3D Secure 2 support built in\nDrop-in is our pre-built UI solution for accepting payments in your app. Drop-in shows all payment methods as a list, in the same block. Your server makes API requests to the  \/paymentMethods,  \/payments, and  \/payments\/details endpoints.\nRequirements\nBefore you begin to integrate, make sure you have followed the Get started with Adyen guide to:\n\nGet an overview of the steps needed to accept live payments.\nCreate your test account.\n\nAfter you have created your test account:\n\nGet your API key.\nGet your client key.\nSet up webhooks to know the payment outcome.\n\nRequired versions:\n\niOS 12 or later.\nAndroid 5.0 or later.\nKotlin 1.8 or later.\nGradle v8 or later.\nHow it works\nFor a Drop-in integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details. \n\nYour client  app: shows the Drop-in UI where the shopper makes the payment. Drop-in uses the data from the API responses to handle the payment flow and additional actions on your client  app. \nYour webhook server: receives webhooks that include the outcome of each payment.\n\nThe parts of your integration work together to complete the payment flow:\n\nThe shopper goes to the checkout screen.\nYour server uses the shopper's country and currency information from your client to get available payment methods.\nDrop-in shows the available payment methods,  collects the shopper's payment details, handles the additional action, and shows the payment result to the shopper.\nYour webhook server receives the notification containing the payment outcome.\n\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client app\n    Go to the integration steps for your client  app.\n        Webhook server\n    Go to the integration steps for your webhook server.\nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.\nFrom your server, make a\u00a0POST  \/paymentMethods request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.\n\nWe use the optional parameters to tailor the list of available payment methods to your shopper.\n\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe currency of the payment and its value in minor units.\n\n\nchannel\n\nThe platform where the payment is taking place. For example, when you set this to iOS, Adyen returns only the payment methods available for iOS.\n\n\ncountryCode\n\nThe shopper's country\/region. Adyen returns only the payment methods available in this country. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nBy default, the shopperlocale is set to en-US. To change the language, set this to the shopper's language and country code. Your client app also uses this locale.\n\n\n\nFor example, to get the available payment methods for a shopper in the Netherlands, for a payment of EUR&nbsp;10:\n\n    \n\nThe response includes the list of available paymentMethods:\n\n    \n\nPass the response to your client app. Use this in the next step to show available payment methods to the shopper.Add Drop-in to your app\n\n    \n        Client app\n    \n\n\n1. Add platform-specific configurations\n\n\n    \n        \n        \n    \n\n2. Create a configuration object\nCreate a configuration object with the following properties:\n\n\n\nParameter\nRequired\nDescription\n\n\n\n\nenvironment\n\nUse test. When you are ready to accept live payments, change the value to one of our live environments.\n\n\nclientKey\n\nA public key linked to your API credential, used for client-side authentication.\n\n\ncountryCode\n\nThe shopper's country\/region. This is used to filter the list of available payment methods to your shopper. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nBy default, this is set to en-US. To change the language, set this to the shopper's language and country code. If you included shopperLocale in your  \/payments request, Drop-in uses that one.\n\n\namount\n\nThe currency and value of the payment, in minor units. This is used to filter the list of available payment methods to your shopper.\n\n\n\nFor example: \n\n    \n\nTo add configuration for specific payment methods, create an additional configuration object. For example, for Apple Pay:\n\n    \n\nOptional configuration\n\n\n\nParameter name\nDescription\n\n\n\n\npreselectedPaymentMethodTitle   Only for iOS.\nWhen you have a preselected payment method, sets the title of the Drop-in overlay.\n\n\npaymentMethodNames\nIf you want to use custom names when displaying payment methods, set the name to use for each payment method.\n\n\n\n\n    \n\n3. Add required callbacks\nIn an instance of AdvancedCheckout, add the following callbacks:\n\n\n\nCallback\nDescription\n\n\n\n\nonSubmit\nFrom your server, make a  \/payments request. The callback returns:  - data: payment data that you must pass to your server.  - extra: additional information, like the shopper's shipping address, for some payment methods. This can be null if no additional information is provided.\n\n\nonAdditionalDetails\nFrom your server, make a  \/payments\/details request, passing the data object from the onSubmit callback.\n\n\n\n\n    \n4. Show Drop-in in your app\nCall startDropin to show the Drop-in, passing the following:\n\n\n\nParameter\nRequired\nDescription\n\n\n\n\ndropInConfiguration\n\nThe configuration object you created.\n\n\npaymentMethodsResponse\n\nThe full  \/paymentMethods response.\n\n\ncheckout\n\nThe advancedCheckout that you created.\n\n\n\n\n    \n\nDrop-in handles the payment flow.\n5. Dismiss Drop-in (optional)\n\n    \n        Client app\n    \n\n\nYou can optionally implement the method to dismiss Drop-in, if this is required for your app. For example, if you want to stop showing the Drop-in UI when the shopper abandons your payment page for an extended period of time.\nUse the global AdyenCheckout.advanced.stopDropIn(); method to dismiss Drop-in. If you do not implement this method, Drop-in is automatically dismissed when the payment flow ends.\n\nIf the shopper has been redirected to a third-party app, for example to authorize the payment on an issuer-hosted website, they can still complete the payment even after you dismiss the Drop-in UI.\n\nMake a payment\n\n    \n        Payment server\n    \n\n \n    \n        Client app\n    \n\n\nWhen the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, Drop-in calls onSubmit.\n\n\nFrom your server, make a POST  \/payments request specifying:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe currency of the payment and its value in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod\n\nThe complete payload of the onSubmit event from your client app that includes the payment method details and other required information.\n\n\npaymentMethod.sdkData\n\nThe object that includes information collected by Drop-in to track the user's payment journey, including information like the checkout attempt identifier. This is required to use the Checkout dashboard that lets you analyze your checkout performance.\n\n\nreturnUrl\n\nThe URL where the shopper should return to after a redirection.  iOS: Use the custom URL scheme for your app. You also need to: Add the return URL handler to your AppDelegate in your native iOS layer. Configure the custom URL scheme in your Info.plist file.   iOS example: com.mydomain.adyencheckout:\/\/  Android: Use the combination of: adyencheckout:\/\/ schemeYour package name Use the AdyenCheckout.instance.getReturnUrl() method to get the value, or hardcode the string.  Android example: adyencheckout:\/\/com.adyen.adyen_checkout_example   Format: Maximum 1024 characters.   The URL must not include personally identifiable information (PII), for example name or email address. \n\n\n\n  applicationInfo\n\n\nIf you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to Building Adyen solutions.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, see Required risk fields.\nNative 3D Secure 2 authentication.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\n\n\n\n\n\n\n\n\n\n\nMap the response to one of the following \n  PaymentEvent\n objects:\n\n\n\nType\nDescription\n\n\n\n\nFinished\nThe payment is finished.\n\n\nAction\nAn additional action is required. Drop-in automatically handles the additional action.\n\n\nError\nAn error has occured.\n\n\n\n\n\nPass the object to your client. The onSubmit callback expects it.\n\n\nErrors\nIf an error occurs, you get one of the following error codes:\n\n\n\nError code\nDescription\nAction to take\n\n\n\n\ncanceledByShopper\nThe shopper canceled the payment.\nTake the shopper back to the checkout page.\n\n\nnotSupported\nThe payment method isn't supported by the shopper's device.\nTell the shopper that the payment method isn't supported by their device.\n\n\nnoClientKey\nNo clientKey configured.\nTell the shopper that an error occurred.\n\n\nnoPayment\nNo payment information configured.\nTell the shopper that an error occurred.\n\n\ninvalidPaymentMethods\nCan't parse the paymentMethods list, or the list is empty.\nTell the shopper that an error occurred.\n\n\nnoPaymentMethod\nCan't find the selected payment method.\nTell the shopper that their selected payment method is currently unavailable.\n\n\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf the shopper performed additional actions to complete the payment, Drop-in calls onAdditionalDetails to make a POST  \/payments\/details request from your server:\n\n    \n\nExample responses:\n\n\n    \n        \n        \n    \n\n\n\nMap the response to a PaymentEvent object.\nPass the object from your server to your client app. The onAdditionalDetail callback expects it.\n\nIf another additional action is required, Drop-in handles it.\nIf no additional action is required, Drop-in completes the payment flow.\n\nHandle the result\n\n    \n        Client app\n    \n\n\nWhen Drop-in completes the payment flow, you get one of the following objects:\n\n\n\nObject\nDescription\n\n\n\n\nPaymentAdvancedFinished\nThe payment was successfully submitted. Contains a resultCode with the status of the payment.\n\n\nPaymentCancelledByUser\nThe payment was canceled by the user.\n\n\nPaymentError\nThe payment encountered an error.\n\n\n\nHandle the object and inform the shopper.Get the payment outcome\nAfter Drop-in finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client app\n    \n\n\nUse the \n  resultCode\n to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account. Review the process to start accepting payments on Get started with Adyen.\nAssess your PCI DSS compliance by submitting the Self-Assessment Questionnaire-A.\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nLoad Drop-in from one of our live environments and set the environment to match your live endpoints:\n\n\n\nEndpoint region\nValue\n\n\n\n\nEurope (EU) live\neurope\n\n\nUnited States (US) live\nunitedStates\n\n\nAustralia (AU) live\naustralia\n\n\nAsia Pacific &amp; Southeast (APSE) live\napse\n\n\nIndia (IN) live\nindia\n\n\n\n\nNext steps\n\nrequiredModify paymentsFind out how to cancel, refund, or capture a payment using our API.Add payment methodsLearn about payment methods and how to add them to your account.TokenizationSave shopper payment details for later payments.3D Secure authenticationComply with regulations such as PSD2 SCA in Europe.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["Flutter","Drop-in"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=Flutter&integration=Components","title":"Flutter Components","content":"Flutter Components\nRender individual payment methods anywhere in your app.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nLow development time to integrate each payment method component\nUI styling customization for each payment method\nFlexibility to add payment method components with configuration for each\n3D Secure 2 support using the 3D Secure 2 Component\nComponents are our pre-built UI solution for accepting payments in your app. Each Component renders a payment method you can render anywhere in your app. Your server makes API requests to the  \/paymentMethods,  \/payments, and  \/payments\/details endpoints.\nRequirements\nBefore you begin to integrate, make sure you have followed the Get started with Adyen guide to:\n\nGet an overview of the steps needed to accept live payments.\nCreate your test account.\n\nAfter you have created your test account:\n\nGet your API key.\nGet your client key.\nSet up webhooks to know the payment outcome.\n\nRequired versions:\n\niOS 12 or later.\nAndroid 5.0 or later.\nKotlin 1.8 or later.\nGradle v8 or later.\nHow it works\nFor a Components integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details. \n\nYour client  app: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client  app. \nYour webhook server: receives webhooks that include the outcome of each payment.\n\nThe parts of your integration work together to complete the payment flow:\n\nThe shopper goes to the checkout screen.\nYour server uses the shopper's country and currency information from your client to get available payment methods.\nThe Component collects the shopper's payment details, handles the additional action, and shows the payment result to the shopper.\nYour webhook server receives the notification containing the payment outcome.\n\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client app\n    Go to the integration steps for your client  app.\n        Webhook server\n    Go to the integration steps for your webhook server.\nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen your shopper is ready to pay, get a list of the available payment methods based on their country, device, and the payment amount.\nFrom your server, make a\u00a0POST  \/paymentMethods request, providing the following parameters. While most parameters are optional, we recommend that you include them because Adyen uses these to tailor the list of payment methods for your shopper.\n\nWe use the optional parameters to tailor the list of available payment methods to your shopper.\n\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe currency of the payment and its value in minor units.\n\n\nchannel\n\nThe platform where the payment is taking place. For example, when you set this to iOS, Adyen returns only the payment methods available for iOS.\n\n\ncountryCode\n\nThe shopper's country\/region. Adyen returns only the payment methods available in this country. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nBy default, the shopperlocale is set to en-US. To change the language, set this to the shopper's language and country code. Your client app also uses this locale.\n\n\n\nFor example, to get the available payment methods for a shopper in the Netherlands, for a payment of EUR&nbsp;10:\n\n    \n\nThe response includes the list of available paymentMethods:\n\n    \n\nPass the response to your client app. Use this in the next step to show available payment methods to the shopper.Add Components to your app\n\n    \n        Client app\n    \n\n\n1. Add platform-specific configurations\n\n\n    \n        \n        \n    \n\n2. Create a configuration object\nCreate a configuration object with the following properties:\n\n\n\nParameter\nRequired\nDescription\n\n\n\n\nenvironment\n\nUse test. When you are ready to accept live payments, change the value to one of our live environments.\n\n\nclientKey\n\nA public key linked to your API credential, used for client-side authentication.\n\n\ncountryCode\n\nThe shopper's country\/region. This is used to filter the list of available payment methods to your shopper. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nBy default, this is set to en-US. To change the language, set this to the shopper's language and country code. If you included shopperLocale in your  \/payments request, the Component uses that one.\n\n\namount\n\nThe currency and value of the payment, in minor units. This is used to filter the list of available payment methods to your shopper.\n\n\n\nMost payment methods use the InstantComponent that takes the InstantComponentConfiguration, so they do not have specific configuration. \nSome payment methods use another type of Component that requires specific configuration. Check the Github repo for configuration for different payment method Components.\n\n\n    \n        \n        \n    \n\n\n3. Add required callbacks\nIn an instance of AdvancedCheckout, add the following callbacks:\n\n\n\nCallback\nDescription\n\n\n\n\nonSubmit\nFrom your server, make a  \/payments request. The callback returns:  - data: payment data that you must pass to your server.  - extra: additional information, like the shopper's shipping address, for some payment methods. This can be null if no additional information is provided.\n\n\nonAdditionalDetails\nFrom your server, make a  \/payments\/details request, passing the data object from the onSubmit callback.\n\n\n\n\n    \n4. Show the Component in your app\nCheck that the selected payment method is available in your  \/paymentMethods response.\n\n\nFrom the list of payment methods from the  \/paymentMethods response, put the selected payment method in an object of the type Map&lt;String, dynamic&gt;.\n\n\n    \n        \n        \n    \n\n\n\n\nThe Component handles the payment flow.Make a payment\n\n    \n        Payment server\n    \n\n \n    \n        Client app\n    \n\n\nWhen the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, the Component calls onSubmit.\nFrom your server, make a POST  \/payments request specifying:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nThe currency of the payment and its value in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod\n\nThe complete payload of the onSubmit event from your client app that includes the payment method details and other required information.\n\n\npaymentMethod.sdkData\n\nThe object that includes information collected by the Component to track the user's payment journey, including information like the checkout attempt identifier. This is required to use the Checkout dashboard that lets you analyze your checkout performance.\n\n\nreturnUrl\n\nThe URL where the shopper should return to after a redirection.  iOS: Use the custom URL scheme for your app. You also need to: Add the return URL handler to your AppDelegate in your native iOS layer. Configure the custom URL scheme in your Info.plist file.  iOS example: com.mydomain.adyencheckout:\/\/  Android: Use the combination of: adyencheckout:\/\/ schemeYour package nameA path. You must add an intent filter to your Manifest.xml file with this path. This is required for Components. Android example: adyencheckout:\/\/com.adyen.adyen_checkout_example\/adyenPayment   Format: Maximum 1024 characters.   The URL must not include personally identifiable information (PII), for example name or email address. \n\n\n\n  applicationInfo\n\n\nIf you are building an Adyen solution for multiple merchants, include some basic identifying information, so that we can offer you better support. For more information, refer to Building Adyen solutions.\n\n\n\n   \nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, see Required risk fields.\nNative 3D Secure 2 authentication.\nCreating a token to store the shopper's payment details.\n\nUsing a token to make a recurring payment with stored payment details.\n\n\n\n\n\n\n\n\n\n\n\nMap the response to one of the following \n  PaymentEvent\n objects:\n\n\n\nType\nDescription\n\n\n\n\nFinished\nThe payment is finished.\n\n\nAction\nAn additional action is required. The Component automatically handles the additional action.\n\n\nError\nAn error has occured.\n\n\n\n\n\nPass the object to your client. The onSubmit callback expects it.\n\n\nErrors\nIf an error occurs, you get one of the following error codes:\n\n\n\nError code\nDescription\nAction to take\n\n\n\n\ncanceledByShopper\nThe shopper canceled the payment.\nTake the shopper back to the checkout page.\n\n\nnotSupported\nThe payment method isn't supported by the shopper's device.\nTell the shopper that the payment method isn't supported by their device.\n\n\nnoClientKey\nNo clientKey configured.\nTell the shopper that an error occurred.\n\n\nnoPayment\nNo payment information configured.\nTell the shopper that an error occurred.\n\n\ninvalidPaymentMethods\nCan't parse the paymentMethods list, or the list is empty.\nTell the shopper that an error occurred.\n\n\nnoPaymentMethod\nCan't find the selected payment method.\nTell the shopper that their selected payment method is currently unavailable.\n\n\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf the shopper performed additional actions to complete the payment, the Component calls onAdditionalDetails to make a POST  \/payments\/details request from your server:\n\n    \n\nExample responses:\n\n\n    \n        \n        \n    \n\n\n\nMap the response to a PaymentEvent object.\nPass the object from your server to your client app. The onAdditionalDetail callback expects it.\n\nIf another additional action is required, the Component handles it.\nIf no additional action is required, the Component completes the payment flow.\n\nHandle the result\n\n    \n        Client app\n    \n\n\nWhen the Component completes the payment flow, you get one of the following objects:\n\n\n\nObject\nDescription\n\n\n\n\nPaymentAdvancedFinished\nThe payment was successfully submitted. Contains a resultCode with the status of the payment.\n\n\nPaymentCancelledByUser\nThe payment was canceled by the user.\n\n\nPaymentError\nThe payment encountered an error.\n\n\n\nHandle the object and inform the shopper.Get the payment outcome\nAfter the Component finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client app\n    \n\n\nUse the resultCode to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account. Review the process to start accepting payments on Get started with Adyen.\nAssess your PCI DSS compliance by submitting the Self-Assessment Questionnaire-A.\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nLoad Components from one of our live environments and set the environment to match your live endpoints:\n\n\n\nEndpoint region\nValue\n\n\n\n\nEurope (EU) live\neurope\n\n\nUnited States (US) live\nunitedStates\n\n\nAustralia (AU) live\naustralia\n\n\nAsia Pacific &amp; Southeast (APSE) live\napse\n\n\nIndia (IN) live\nindia\n\n\n\n\nNext steps\n\nrequiredModify paymentsFind out how to cancel, refund, or capture a payment using our API.Add payment methodsLearn about payment methods and how to add them to your account.TokenizationSave shopper payment details for later payments.3D Secure authenticationComply with regulations such as PSD2 SCA in Europe.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["Flutter","Components"]},{"url":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration\/advanced-flow?platform=Flutter&integration=API only","title":"Flutter API only","content":"API only\nCreate your own client-side UI and use our API endpoints to get the list of available payment methods and submit a payment.\nSupported payment methods\nCards, buy now pay later, wallets, and many more.\nSee all supported payment methods\nFeatures\n\nFull control of styling on your checkout page\nYour own UI elements\nCreating your own client-side logic\n\nHandling secure card data and authentication\nYou must ensure that your integration complies with regulatory requirements such as PCI DSS and PSD2 SCA.\nWe recommend that you use our pre-built client-side solutions to securely do the following:\n\nCollect, validate, and encrypt card details: Implement our solution to handle encrypted card data with your custom UI and comply with PCI DSS regulations.\nAuthenticate transactions with 3D Secure 2: Handle the 3D Secure 2 authentication action using our solution and comply with PSD2 SCA regulations for online payments.\nWith an API-only integration, you create your own UI, implement your own client-side logic, and use our API to send and receive payment data. You have full control over the look and feel of your checkout page.\nTo reduce your development time and resources, you can use one of our pre-built UI options (Drop-in\/Components) instead.Requirements\nBefore you build your integration, take into account the following requirements and preparations.\n\n\n\nRequirement\nDescription\n\n\n\n\nAPI credential roles\nMake sure that you have the following role: Checkout webservice role\n\n\nCustomer Area roles\nMake sure that you have one of the following roles: Merchant admin role Manage API credentials\n\n\nWebhooks\nSubscribe to the following webhook: Standard webhooks\n\n\nLimitations\nYour PCI compliance assesment determines your integration options for card payments.For 3D Secure 2 authentication for shoppers using Chrome, your cookies must use the SameSite attribute. \n\n\nSetup steps\nBefore you begin: Create your Adyen test accountGet your API key.Get your client key.Set up webhooks.If you want to process payments using raw card data, contact your Adyen Account Manager to confirm that you are eligible.\n\n\nHow it works\nFor an API-only integration, you must implement the following parts:\n\nYour payment server: sends the API requests to get available payment methods, make a payment, and send additional payment details.\nYour client: shows your custom UI where the shopper makes the payment. Passes data to and receives data from your payment server to handle the payment flow and additional actions on your client.\nYour webhook server: receives webhooks that include the outcome of each payment.\n\nIntegration steps\nThe parts of your integration work together to handle the payment flow:\n\nFrom your server, make an API request to get a list of payment methods available to the shopper.\nShow the payment form to collect the shopper's payment details in your UI.\nFrom your server, make a payment request with the data that you have collected from the shopper.\nFor some payment methods, you use your client to handle the additional action that your shopper must do. For example, you redirect your shopper to another website or show a QR code that the shopper uses to complete the payment.\nFrom your server, send additional payment details.\nGet the payment outcome.\n\nIf you are integrating these parts separately, you can start at the corresponding part of this integration guide:\n\n\n        Payment server\n    Go to the integration steps for your server.\n        Client website or app\n    Go to the integration steps for your client.\n        Webhook server\n    Go to the integration steps for your webhook server.\nInstall an API library\n\n    \n        Payment server\n    \n\n\nWe provide server-side API libraries for several programming languages, available through common package managers, like Gradle and npm, for easier installation and version management. Our API libraries will save you development time, because they:\n\nUse an API version that is up to date.\nHave generated models to help you construct requests.\nSend the request to Adyen using their built-in HTTP client, so you do not have to create your own.\n\n\n\n    \n        \n        \n    \n\nGet available payment methods\n\n    \n        Payment server\n    \n\n\nWhen the shopper goes to your checkout page, get a list of the available payment methods to show the shopper.\n\n\nFrom your server, make a\u00a0POST  \/paymentMethods request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nAn object with the following parameters: currency: The three-character ISO currency code.value: The value of the payment in minor units.\n\n\nchannel\n\nWeb\n\n\ncountryCode\n\nThe shopper's country\/region. Format: the two-letter ISO-3166-1 alpha-2 country code. Exception: QZ (Kosovo).\n\n\nshopperLocale\n\nLanguage and country code. This is used to translate the payment methods names in the response.  Default value: en-US.\n\n\n\nThe information that you include is used to filter the list of available payment methods.\n\n\n\nThe response includes the list of available payment methods, in the paymentMethods object. The payment methods are ordered by popularity in the shopper's country. For each payment method, the response contains:\n\n\n\nParameter name\nDescription\n\n\n\n\nname\nThe name of the payment method that you can show in your payment form.\n\n\ntype\nThe unique payment method code. You must include this when you make a payment.\n\n\n\n\n\n\n\n\nPass the list of available payment methods and the required input fields for each payment method to your client.\n\nBuild your payment form\n\n    \n        Client website or app\n    \n\n\nCreate your payment form where the shopper enters their information. We recommend that you collect commonly-used shopper information in your payment form to process a transactions, depending on your type of business.\n\nSome payment methods require you to collect, or optionally accept, additional information that you include in the payment request. For the additional information you must collect in your payment form for an individual payment method, go to our API-only guide for the individual payment method.\nWe provide payment method and issuer logos that you can download and use in your payment form.\nCredit and debit card details\nBecause governing bodies and organizations regulate the handling of credit and debit card information strictly, you must make sure that you are compliant when collecting card details. When a shopper selects to pay with a card, use the integration option that corresponds to your level of PCI compliance:\n\n(Recommended) Adyen's Custom Card Component with encryption: our pre-built UI with logic to securely encrypt and handle payment card data.\nYour own UI and logic to collect and handle raw card data: before you build an integration that collects raw credit and debit card data, you must assess your PCI compliance according to the most extensive self-assessment form and contact your Adyen Account Manager to confirm that you are eligible.\n\nInformation in the payment form\nAfter collecting information in your payment form, you must add it to corresponding API parameters that you include in the payment request.\nFor example, for commonly-used information:\n\n\n\nField in the payment form\nAPI request parameter\n\n\n\n\nFirst name\nshopperName.firstName\n\n\nLast name\nshopperName.lastName\n\n\nEmail address\nshopperEmail\n\n\nBilling address (multiple fields)\nbillingAddress (object)\n\n\nShipping address (multiple fields)\ndeliveryAddress (object)\n\n\nPhone number\ntelephoneNumber\n\n\n\n    \n    \n        \n            \n            \n                                    Downloading logos\n                            \n        \n        \n            \nIf you are building your own UI, we provide payment method and issuing bank logos that you can use on your checkout page. The images are available in PNG format with different sizes and screen resolutions and in SVG format.\nIf you cannot find a payment method or issuer logo, contact our Support Team.\nPayment method logos\nDownload the images from the links below, specifying:\n\n\nimg-size: Specify the size for PNG format. Use the following values:\n\nsmall: Image size 40x26 pixels\nmedium: Image size 77x50 pixels\nlarge: Image size 154 x 100 pixels\n\n\n\nsuffix: Specify the image density for PNG format. If not specified, the images will have the same size as the img-size.  Append any of the following values:\n\n@2x\n@3x\n-ldpi\n-hdpi\n-xhdpi\n-xxhdpi\n-xxxhdpi\n\n\n\npm-type: The paymentMethods.type returned in the \/paymentMethods response. For example, googlepay or primeiropay_boleto.\nFor cards, the values you should use are specified under brands with type: scheme. For example, mc, visa, and amex. To get a generic card logo, set pm-type to card.\n\n\nDownload link for SVG:\n\n    \n\nDownload link for PNG:\n\n    \n\nExamples:\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/mc.svg\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/large\/googlepay@2x.png\nIssuing bank logos\nSome payment methods such as iDEAL present a list of issuing banks to the shopper.\nDownload the issuing bank logos from the links below, specifying:\n\n\nimg-size: Specify the size for PNG format. Use the following values:\n\nsmall: Image size 40x26 pixels\nmedium: Image size 77x50 pixels\nlarge: Image size 154 x 100 pixels\n\n\n\nsuffix: Specify the image density for PNG format. If not specified, the images will have the same size as the img-size.  Append any of the following values:\n\n@2x\n@3x\n-ldpi\n-hdpi\n-xhdpi\n-xxhdpi\n-xxxhdpi\n\n\n\npm-type: The paymentMethods.type in objects with details.key issuer returned in the \/paymentMethods response. For example, ideal.\n\n\nissuerid: The details.items.id referring to the issuing bank. For example, 1121 and 1151 for iDEAL.\n\n\nDownload link for SVG:\n\n    \n\nDownload link for PNG:\n\n    \n\nExamples:\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/ideal\/1121.svg\nhttps:\/\/checkoutshopper-live.adyen.com\/checkoutshopper\/images\/logos\/small\/ideal\/1151-xxhdpi.png\n\n        \n    \n\nMake a payment\n\n    \n        Payment server\n    \n\n\nAfter the shopper selects the Pay button or chooses to pay with a payment method that requires a redirection, you must make a payment request to Adyen.\n\n\nPass the data from your client to your server.\n\n\nFrom your server, make a POST  \/payments request including the following parameters:\n\n\n\nParameter name\nRequired\nDescription\n\n\n\n\nmerchantAccount\n\nYour merchant account name.\n\n\namount\n\nAn object with the following parameters: currency: The three-character ISO currency code.value: The value of the payment in minor units.\n\n\nreference\n\nYour unique reference for this payment.\n\n\npaymentMethod.type\n\nThe payment method type. From the \/paymentMethods response, this is the value in paymentMethod.type.\n\n\nreturnUrl\n\nThe URL where the shopper should return to after a redirection.  Format: Include the protocol: http:\/\/ or https:\/\/.Maximum 1024 characters.If it includes non-ASCII characters, such as spaces or special letters, URL encode it.You can include your own additional query parameters, such as a shopper ID or order reference number.   The URL must not include personally identifiable information (PII), for example name or email address. \n\n\napplicationInfo\n\nIf you are a technology partner, service partner, or system integrator, send information about the application, so that we can offer you more support.\n\n\n\n\nFor the following cases, you must include additional parameters in your request:\n\nIntegrating some payment methods. For more information, go to payment method integration guides.\nUsing our risk management features. For more information, go to data quality and risk field reference.\nCreating a token to store the shopper's payment details.\nUsing a token to make a recurring payment with stored payment details.\n\n\n\n\n\n\n\n\n\n\nYour next step depends on if the  \/payments response contains an action object:\n\nIf the response has no action object, get the payment outcome.\n\nIf the response contains an action object, handle the additional action.\n\n\n\n\n\n\nHandle the additional action\n\n    \n        Client website or app\n    \n\n\nSome payment methods require additional action from the shopper. Common examples of additional actions include:\n\nLogging in to a bank's website or app.\nAuthenticating a payment with 3D Secure 2.\nScanning a QR code.\n\n\nImplement logic to handle all action types, so that your integration can handle different payment methods. To see if an individual payment method requires an additional action, see the corresponding payment method guide for it.\n\nHow you handle the action depends on the action type (action.type):\n\n\n\nType\naction.type value\n\n\n\n\nRedirect action\nredirect\n\n\n3D Secure 2 authentication action\nthreeDS2\n\n\nQR code action\nqrCode\n\n\nSDK action\nsdk\n\n\nVoucher action\nvoucher\n\n\nAwait action\nawait\n\n\n\nRedirect action\nWhen the  \/payments response includes action.type redirect, redirect the shopper to another site to complete the payment.\nHow you handle the redirect depends on if it is a payment method redirect or a 3D Secure 2 redirect.\n\n\n    \n        \n        \n    \n\n\n3D Secure 2 authentication action\nWhen the  \/payments response includes action.type: threeDS2Fingerprint or threeDS2Challenge, the payment qualifies for 3D Secure 2 and it goes through the frictionless or the challenge flow. Use one of our 3D Secure 2 solutions to handle the action.\nQR code action\nWhen the  \/payments response includes action.type: qrCode, the shopper must scan a QR code to complete the payment.\n\n    \n\n\n\nFrom the  \/payments response, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\naction.qrCodeData\nContains the URL for the QR code.\n\n\n\n\n\nGet the qrCodeData from the action object. This parameter contains a URL for the QR code.\n\n\nShow the QR code to the shopper.\n\n\nThe shopper scans the QR code.\n\n\nSend additional payment details to finish the payment flow.\n\n\nSDK action\nWhen the  \/payments response includes action.type: sdk, the shopper must use another UI overlay to complete the payment. For example, a payment method requires the shopper to use its specific UI to enter payment details.\n\n    \n\n\n\nFrom the  \/payments response, get the following from the action object:\n\n\n\nParameter\nDescription\n\n\n\n\nsdkData\nThe data that you must pass to the SDK.\n\n\n\n\n\nPass the data from the sdkData object to the SDK.\n\n\nThe shopper uses the SDK to finish the payment.\n\n\nGet the result from the SDK.\n\n\nSend additional payment details to finish the payment flow.\n\n\nVoucher action\nWhen the  \/payments response includes action.type: voucher, the shopper must use a voucher to complete the payment.\n\n    \n\n\n\nThe data included in the  \/payments response is different for each voucher payment method. Get the available information from it. For example, for DOKU vouchers, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\nexpiresAt\nThe date when the voucher expires.\n\n\ninitialAmount\nThe payment amount and currency.\n\n\nmerchantName\nThe name of your shop.\n\n\ninstructionsUrl\nThe URL where you shopper can get additional information and instructions about how to pay.\n\n\n\n\n\nShow voucher information to the shopper that your shopper uses to pay outside of your client.\n\n\nSend additional payment details to finish the payment flow.\n\n\nAwait action\nWhen the  \/payments response includes action.type: await, the shopper must take an additional action to complete the payment. For example: entering a code into their banking app.\n\n    \n\n\n\nFrom the  \/payments response, get the following:\n\n\n\nParameter\nDescription\n\n\n\n\naction.paymentData\nAdditional payment data.\n\n\n\n\n\nThe shopper finishes the additional action for the payment.\n\n\nSend additional payment details to finish the payment flow.\n\nSend additional payment details\n\n    \n        Payment server\n    \n\n\nIf you handled an additional action, you must send additional payment details.\n\nFor redirects: if the shopper fails to return to your client, you do not get additional payment details to send. Instead, wait for the corresponding webhook message for the outcome of the payment.\n\nFrom your server, make a POST  \/payments\/details request. The parameters that you must include depends on the payment method. For the parameters for an individual payment method, go to the API-only page for the individual payment method .\n\n    \n\nThe response includes information about the current payment status.\n\n    \n\n\n    \nGet the payment outcome\nAfter the shopper finishes the payment flow, you can show the shopper the current payment status. Adyen sends a webhook with the outcome of the payment.\nInform the shopper\n\n    \n        Client website or app\n    \n\n\nUse the \n  resultCode\n to show the shopper the current payment status. This synchronous response doesn't give you the final outcome of the payment. You get the final payment status in a webhook that you use to update your order management system.\nUpdate your order management system\n\n    \n        Webhook server\n    \n\n\nYou get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.\nFor a successful payment, the event contains success: true.\n\n    \n\nFor an unsuccessful payment, you get success: false, and the reason field has details about why the payment was unsuccessful.\n\n    \nError handling\nIn case you encounter errors in your integration, refer to the following:\n\nAPI error codes: If you receive a non-HTTP 200 response, use the errorCode to troubleshoot and modify your request.\nPayment refusals: If you receive an HTTP 200 response with an Error or Refused resultCode, check the refusal reason and, if possible, modify your request.\nTest and go live\nBefore going live, use our list of test cards and other payment methods to\u00a0test your integration. We recommend testing each payment method that you intend to offer to your shoppers.\nYou can check the status of a test payment in your\u00a0Customer Area, under Transactions &gt;\u00a0Payments.\nTo debug or troubleshoot test payments, you can also use API logs in your test environment.\nWhen you are ready to go live, you need to:\n\nApply for a live account.\nAssess your PCI DSS compliance by submitting:\n\nthe Self-Assessment Questionnaire-A, if you are using the Custom Card Component.\nthe Self-Assessment Questionnaire-D, if you are submitting raw card data.\n\nConfigure your live account.\u00a0\nSubmit a request to add payment methods in your live Customer Area .\nSwitch from test to our live endpoints.\n\nMake sure that all API requests you make for the same payment session use the same live endpoint region. Using different regions for  \/payments and  \/payments\/details requests may result in errors, for example, when authenticating with 3D Secure 2.\n\n\nrequiredSet up notificationsReceive confirmation when a payment is authorised or fails.requiredAdd payment methodsLearn about payment methods and how to add them to your account.Payment modificationsFind out how to cancel, refund, or capture a payment using our API.\n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Build your integration","lvl3":"Advanced flow integration guide"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/online-payments","lvl2":"https:\/\/docs.adyen.com\/online-payments\/build-your-integration","lvl3":"\/online-payments\/build-your-integration\/advanced-flow"},"levels":4,"category":"Online Payments","category_color":"green","tags":["Flutter","API only"]}],"articleFiles":{"payment-methods-request-android-71.js":"<p alt=\"\">payment-methods-request-android-71.js<\/p>","payment-methods-request-ios-71.js":"<p alt=\"\">payment-methods-request-ios-71.js<\/p>","payment-methods-request-web-71.js":"<p alt=\"\">payment-methods-request-web-71.js<\/p>","payments-details-request-71.js":"<p alt=\"\">payments-details-request-71.js<\/p>","payments-request-web-71.js":"<p alt=\"\">payments-request-web-71.js<\/p>"}}
