{"title":"In-person donations using Adyen Giving","category":"default","creationDate":1779796135,"content":"<div class=\"additional-info-block output-inline\">\n<h5 class=\"article__heading additional-info-block__title\">Read more<\/h5><div class=\"additional-info-block__body\"><p><img style=\"width: 28px;\" alt=\"Giving logo\" src=\"\/user\/pages\/docs\/05.platforms\/28.in-person-payments\/08.donations-in-person\/giving.svg?decoding=auto&amp;fetchpriority=auto\" \/>&nbsp;Learn about Adyen Giving <a href=\"\/platforms\/online-payments\/donations-online\">in your online checkout<\/a>.<\/p><\/div><\/div>\n\n<p>With Adyen Giving, your users can give shoppers the option to donate to a nonprofit organization when shoppers make an in-store purchase. To enable this, you set up donation campaigns for <a href=\"\/platforms\/account-structure-resources#balance-platform-resources\" target=\"_blank\">account holder resources<\/a>.<\/p>\n<p>When a campaign has been started and a shopper chooses to donate, the donation is processed as a separate transaction. Adyen covers all fees and the donation amount is transferred to the nonprofit in full. This means you can split amounts and fees on the original transaction, but not on the donation transaction.<\/p>\n<h2>Requirements<\/h2>\n<p>Before you begin, take into account the following requirements, limitations, and preparations.<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Requirement<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><strong>Integration type<\/strong><\/td>\n<td style=\"text-align: left;\">Adyen for Platforms merchants with a platform model, using a Terminal API integration with payment terminals or a Standalone solution. The terminals must use terminal software version 1.109 or later. Some terminals or features require software version 1.110 or later.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong><a href=\"\/account\/user-roles\">Customer Area roles<\/a><\/strong><\/td>\n<td style=\"text-align: left;\">Make sure that you have the following roles: <ul><li markdown=\"1\"><strong>Donation campaigns viewer<\/strong>: to view donation campaigns and access campaign insights.<\/li> <li markdown=\"1\"><strong>Donation campaigns manager<\/strong>: to create, start, edit, and end donation campaigns and access campaign insights.<\/li><\/ul><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong><a href=\"\/development-resources\/webhooks\">Webhooks<\/a><\/strong><\/td>\n<td style=\"text-align: left;\">Subscribe to the <strong><a href=\"\/development-resources\/webhooks\/webhook-types#other-webhooks\">Adyen Giving merchant webhook<\/a><\/strong>.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Hardware<\/strong><\/td>\n<td style=\"text-align: left;\">See <a href=\"\/platforms\/donations#terminals\">Supported terminals<\/a> for a list of terminal models that support Giving, and the donation settings that are supported on these terminals.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Limitations<\/strong><\/td>\n<td style=\"text-align: left;\">Note the following limitations: <ul><li markdown=\"1\">The maximum number of account holders that you can assign to a donation campaign is 400.<\/li> <li markdown=\"1\">A store can only be part of one active campaign at the same time.<\/li> <li markdown=\"1\">Make sure that you are using <a href=\"\/platforms\/donations#supported-payment-methods\">supported payment methods<\/a> and <a href=\"\/platforms\/donations#supported-currencies\">supported regions and currencies<\/a>.<\/li><\/ul><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Setup steps<\/strong><\/td>\n<td style=\"text-align: left;\">Before you begin, make sure that the nonprofit you choose has been onboarded to Adyen, or pick one of our <a href=\"https:\/\/www.adyen.com\/giving\/nonprofit\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">pre-approved nonprofits<\/a> that have already been onboarded.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>How it works<\/h2>\n<p>To enable your users to accept donations at the point of sale:<\/p>\n<ol>\n<li>\n<p><a href=\"\/platforms\/donations#nonprofit-organizations\" target=\"_blank\">Choose a nonprofit<\/a>.<\/p>\n<\/li>\n<li>\n<p><a href=\"#set-up-a-donation-campaign\">Set up a donation campaign<\/a> in your Customer Area, under <strong>Giving<\/strong> &gt; <strong>Campaigns<\/strong>.<br \/>\nYou need to select:<\/p>\n<ul>\n<li>The account holders that you want to make the campaign available to.<\/li>\n<li>The nonprofit.<\/li>\n<li>\n<p>The stores and <a href=\"#donation-settings\">donation settings<\/a>.<\/p>\n<!-- list separator -->\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p>Optionally <a href=\"#logo\">configure a donation campaign logo<\/a> to show as the standby screen on payment terminals.<\/p>\n<\/li>\n<li>\n<p>To be able to inform shoppers about their donation, implement either or both of the following methods:<\/p>\n<ul>\n<li>Generate a <a href=\"#two-step-donation-response\">shopper receipt for the donation<\/a>. This is only possible if you use the <a href=\"#interaction-flow\">two-step interaction flow<\/a>.<\/li>\n<li>\n<p>Use <a href=\"#giving-webhook\">Giving webhook messages<\/a> to send shoppers a receipt by email or mobile messaging.<\/p>\n<!-- list separator -->\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p>Start the campaign from the <strong>Campaigns<\/strong> overview in your Customer Area.<\/p>\n<\/li>\n<\/ol>\n<p>After the next scheduled reboot of the payment terminals, the terminals automatically show the donation options from the campaign after every payment, except when the terminal is offline or the payment method is not supported by Adyen Giving.<\/p>\n<h2>Donation settings<\/h2>\n<p>With our Giving integration, you have the flexibility to choose a combination of interaction flow and donation type. You configure these choices in your <a href=\"#set-up-a-donation-campaign\">donation campaign<\/a>.<\/p>\n<p>However, there are limitations to the supported choices, depending on <a href=\"\/platforms\/donations#supported-currencies\">region and currency<\/a>, <a href=\"\/platforms\/donations#supported-payment-methods\">payment method<\/a>, and <a href=\"\/platforms\/donations#terminals\">terminal model<\/a>.<\/p>\n<h3 id=\"interaction-flow\">Interaction flow<\/h3>\n<p>You can choose to use a one-step flow or a two-step flow. Technically, there are two transactions: one for the payment and one for the donation. But in the one-step flow, the payment and the donation are shown as a single transaction, and shoppers need to present their card only once.<\/p>\n<p>In the two-step flow, shoppers need to present their card twice. With a Terminal API integration, this enables you to provide the shopper with a receipt for their donation, because you can <a href=\"#two-step-donation-response\">retrieve the full donation transaction response<\/a>. The two-step flow also supports more payment methods than the one-step flow.<\/p>\n<p>The effect on your payment terminals is as follows:<\/p>\n<ol>\n<li>\n<p>After you have set up and activated your donation campaign, both flows start in the same way:<\/p>\n<ol>\n<li>You initiate a payment for the goods your shopper is purchasing.<\/li>\n<li>\n<p>The shopper presents their card on the payment terminal.<\/p>\n<!-- list separator -->\n<\/li>\n<\/ol>\n<\/li>\n<li>\n<p>From this moment, the flows are different:<\/p>\n<table style=\"width: 100%; table-layout: fixed;\">\n<thead>\n<tr>\n<th style=\"width: 50%; text-align: left;\">One-step flow<\/th>\n<th style=\"width: 50%; text-align: left;\">Two-step flow<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\n\n<\/td>\n<td>\n<p>The terminal screen shows that the payment is approved, and...<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>The terminal presents the <a href=\"#donation-type\">options to donate<\/a> to the nonprofit.<\/p>\n<\/td>\n<td>\n<p>... the terminal also presents the <a href=\"#donation-type\">options to donate<\/a> to the nonprofit.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>If the shopper chooses to donate, the terminal processes the donation.<\/p>\n<\/td>\n<td>\n<p>If the shopper chooses to donate, the terminal starts the donation transaction for the amount the shopper specified and asks for the card.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n\n<\/td>\n<td>\n<p>The shopper presents their card on the terminal to complete the donation transaction.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>The terminal shows a confirmation to thank the shopper.<\/p>\n<\/td>\n<td>\n<p>The terminal shows a confirmation to thank the shopper.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>The terminal shows that the payment is approved.<\/p>\n<\/td>\n<td>\n\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<\/ol>\n<p>In both flows:<\/p>\n<ul>\n<li>The terminal does not prompt for a donation when it is offline or after a gift card payment.<\/li>\n<li>If the shopper selects the donation option <em>Not now<\/em>, the terminal shows a confirmation screen with a message that no donation was made.<\/li>\n<\/ul>\n<h3 id=\"donation-type\">Donation type<\/h3>\n<p>You can present the following donation types on the payment terminal screen:<\/p>\n<ul>\n<li><strong>Fixed amounts<\/strong>: configure up to three fixed amounts to present to shoppers.<\/li>\n<li><strong>Round up<\/strong>: allow shoppers to donate by rounding up the transaction amount of their purchase. You can enable the round-up feature on its own, or together with one fixed amount.<\/li>\n<\/ul>\n<p>The terminal always shows a <em>\"Not now\"<\/em> option that the shopper can select to skip donating.<\/p>\n<p>The following example screens are for the two-step flow, showing that the payment was approved.<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Fixed amounts<\/th>\n<th style=\"text-align: left;\">Round up<\/th>\n<th style=\"text-align: left;\">Round up and one fixed amount<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><img title=\"Fixed amount options\" alt=\"Screen with fixed amounts\" src=\"\/images\/3\/1\/c\/e\/2\/31ce2c08be6c5c1214d5079ec759031d9bcf317f-fixed-amounts.png\" \/><\/td>\n<td style=\"text-align: left;\"><img title=\"Round-up option\" alt=\"Round-up screen\" src=\"\/images\/2\/6\/6\/0\/0\/2660074ff62e17ae512d04a372524b11410bc1ee-round-up.png\" \/><\/td>\n<td style=\"text-align: left;\"><img title=\"Round-up option and one fixed amount option\" alt=\"Screen with round-up and one fixed amount\" src=\"\/images\/3\/8\/f\/d\/a\/38fda23a0238d1e5431bc3d85e0d1e15177cd4b4-round-up-and-fixed.png\" \/><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\"set-up-a-donation-campaign\">Set up a donation campaign for account holders<\/h2>\n<p>The Campaigns user interface in the Customer Area guides you through setting up a donation campaign, and shows example screens. The main steps to create an Adyen Giving donation campaign for your account holders are as follows:<\/p>\n<ol>\n<li>\n<p>In your <a href=\"https:\/\/ca-test.adyen.com\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Customer Area<\/a>, go to <strong>Giving<\/strong> &gt; <strong>Campaigns<\/strong>.<\/p>\n<\/li>\n<li>\n<p>Select <strong>Create new campaign<\/strong> &gt; <strong>For account holders<\/strong>.<\/p>\n<\/li>\n<li>\n<p>Add the account holders to the campaign, one by one or as a group:<\/p>\n<ul>\n<li>One by one: select <strong>Search accounts<\/strong>, select your balance platform, and search by account holder ID or reference, legal entity ID or name, or email address. Then select <strong>Add<\/strong> in the tile of the individual account holder.<\/li>\n<li>Group: select <strong>Submit a list of accounts<\/strong>, select your balance platform, enter a comma-separated list of account holder IDs, and select <strong>Add<\/strong>.<\/li>\n<\/ul>\n<p>The UI will inform you if an account holder has already been added or cannot be found on the selected balance platform.<\/p>\n<\/li>\n<li>\n<p>Select the campaign details:<\/p>\n<ul>\n<li>The nonprofit.<\/li>\n<li>Either a specific cause, or \"General fundraising\".<\/li>\n<li>\n<p>The sales channel: online payments (ecommerce), in-person payments (point of sale), or both.<\/p>\n<!-- list separator -->\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p>If you selected online payments, first select the stores that the campaign applies to.<br \/>\nThen select the donation type. When you choose fixed amounts and enter the amounts in your default currency, we automatically add equivalent amounts in other currencies if necessary for the selected stores.<\/p>\n<\/li>\n<li>\n<p>If you selected in-person payments, first select the stores that the campaign applies to.<br \/>\nThen  select:<\/p>\n<ul>\n<li>The one-step or two-step interaction flow.<\/li>\n<li>Timeouts for the donation prompt and the payment screen.<\/li>\n<li>The text to show on the donation screen on the terminal: the name of the nonprofit or the cause you selected.<\/li>\n<li>\n<p>The donation type. When you choose fixed amounts and enter the amounts in your default currency, we automatically add equivalent amounts in other currencies if necessary for the selected stores.<\/p>\n<!-- list separator -->\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p>Review the summary. When everything is correct, select <strong>Create campaign<\/strong>.<\/p>\n<\/li>\n<\/ol>\n<p>The campaign is now set up, but not active yet.<\/p>\n<p>When you are ready to activate the campaign:<\/p>\n<ol>\n<li>In your <a href=\"https:\/\/ca-test.adyen.com\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Customer Area<\/a>, go to <strong>Giving<\/strong> &gt; <strong>Campaigns<\/strong>.<\/li>\n<li>Find the tile for the campaign, and select <strong>Start<\/strong>.<\/li>\n<\/ol>\n<h2 id=\"logo\">(Optional) Configure a logo<\/h2>\n<div class=\"row\" style=\"align-items: top;justify-content: center;\">\n<div class=\"col col-12 col-md-8\" style=\"background-color:transparent;;\"><p>You can configure your terminal's standby screen to show a logo for your donation campaign. Follow the instructions in the Customer Area under <strong>In-person payments<\/strong> &gt; <strong>Terminal Settings<\/strong> &gt; <strong>Customisation<\/strong> &gt; <strong>Logo<\/strong>.<\/p><table><thead><tr><th style=\"text-align: left;\">Model<\/th><th style=\"text-align: left;\">Requirements<\/th><\/tr><\/thead><tbody><tr><td style=\"text-align: left;\">AMS 1<\/td><td style=\"text-align: left;\">Dimensions: 480 x 800 File size: max. 1 MB<\/td><\/tr><tr><td style=\"text-align: left;\">P630<\/td><td style=\"text-align: left;\">Dimensions: 320 x 480 File size: max. 1 MB<\/td><\/tr><tr><td style=\"text-align: left;\">e280<\/td><td style=\"text-align: left;\">Dimensions: 320 x 444 File size: max. 512 KB<\/td><\/tr><tr><td style=\"text-align: left;\">e285p<\/td><td style=\"text-align: left;\">Dimensions: 240 x 284 File size: max. 512 KB<\/td><\/tr><tr><td style=\"text-align: left;\">M400<\/td><td style=\"text-align: left;\">Dimensions: 854 x 432 File size: max. 512 KB<\/td><\/tr><tr><td style=\"text-align: left;\">M450<\/td><td style=\"text-align: left;\">Dimensions: 1280 x 800 File size: max. 100 MB<\/td><\/tr><tr><td style=\"text-align: left;\">P400 Plus<\/td><td style=\"text-align: left;\">Dimensions: 320 x 450 File size: max. 512 KB<\/td><\/tr><tr><td style=\"text-align: left;\">S1E<\/td><td style=\"text-align: left;\">Dimensions: 720 x 1280 File size: max. 1 MB<\/td><\/tr><tr><td style=\"text-align: left;\">S1E2L<\/td><td style=\"text-align: left;\">Dimensions: 720 x 1280 File size: max. 1 MB<\/td><\/tr><tr><td style=\"text-align: left;\">S1F2<\/td><td style=\"text-align: left;\">Dimensions: 720 x 1280 File size: max. 1 MB<\/td><\/tr><tr><td style=\"text-align: left;\">S1F2L<\/td><td style=\"text-align: left;\">Dimensions: 720 x 1280 File size: max. 1 MB<\/td><\/tr><tr><td style=\"text-align: left;\"><a href=\"\/point-of-sale\/android-terminals\/themes\/\">SFO1<\/a><\/td><td style=\"text-align: left;\">Dimensions: 1280 x 800 File size: max. 100 MB<\/td><\/tr><tr><td style=\"text-align: left;\">S1U2<\/td><td style=\"text-align: left;\">Dimensions: 720 x 1280 File size: max. 1 MB<\/td><\/tr><tr><td style=\"text-align: left;\">V240m Plus<\/td><td style=\"text-align: left;\">Dimensions: 320 x 450 File size: max. 512 KB<\/td><\/tr><tr><td style=\"text-align: left;\">V400c Plus<\/td><td style=\"text-align: left;\">Dimensions: 320 x 450 File size: max. 512 KB<\/td><\/tr><tr><td style=\"text-align: left;\">V400m<\/td><td style=\"text-align: left;\">Dimensions: 320 x 450 File size: max. 512 KB<\/td><\/tr><\/tbody><\/table><\/div><div class=\"col col-12 col-md-4\" style=\"background-color:transparent;;\"><div style=\"text-align: right;\"><p><img alt=\"Terminal screen with Giving logo\" src=\"\/images\/4\/c\/7\/1\/4\/4c7148a5a8f6040debc0843dac4e95e7f38fc203-pos-logo.png\"><\/p><\/div><\/div><\/div>\n<h2 id=\"two-step-donation-response\">(Optional) Get the two-step donation response<\/h2>\n<p>If you are using the two-step flow in a Terminal API integration, you can retrieve the full response for the donation transaction through a transaction status request.<\/p>\n<p>A reason to retrieve the donation response is that this includes a <code>PaymentReceipt<\/code> object that you can use to generate a shopper receipt for the donation.<\/p>\n<div class=\"notices green\">\n<p>It is only possible to retrieve the donation transaction response in the two-step flow.<\/p>\n<\/div>\n<ol>\n<li>\n<p><a href=\"\/point-of-sale\/basic-tapi-integration\/verify-transaction-status\">Make a transaction status request<\/a>, specifying:<\/p>\n<ul>\n<li>\n<p>The standard <a href=\"\/point-of-sale\/design-your-integration\/terminal-api#request-message-header\">\n  <code>SaleToPOIRequest.MessageHeader<\/code>\n<\/a> object, with <code>MessageClass<\/code> set to <span translate=\"no\"><strong>Service<\/strong><\/span> and <code>MessageCategory<\/code> set to <span translate=\"no\"><strong>TransactionStatus<\/strong><\/span>.<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Parameter<\/th>\n<th style=\"text-align: center;\">Required<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><code>ProtocolVersion<\/code><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: left;\"><strong>3.0<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>MessageClass<\/code><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>Service<\/strong><\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>MessageCategory<\/code><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>TransactionStatus<\/strong><\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>MessageType<\/code><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>Request<\/strong><\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>SaleID<\/code><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: left;\">Your unique ID for the POS system component to send this request from.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>ServiceID<\/code><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: left;\">Your unique ID for this request, consisting of 1-10 alphanumeric characters. Must be unique within the last 48 hours for the terminal (<code>POIID<\/code>) being used.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>POIID<\/code><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: left;\">The unique ID of the terminal to send this request to. Format: <em>[device model]-[serial number]<\/em>.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<\/ul>\n<ul>\n<li>\n<p>The  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/terminal-api\/latest\/post\/transactionstatus\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">TransactionStatusRequest<\/a> object with:<\/p>\n<ul>\n<li>\n<p><code>ReceiptReprintFlag<\/code>: <span translate=\"no\"><strong>true<\/strong><\/span><\/p>\n<\/li>\n<li>\n<p><code>DocumentQualifier<\/code>: The receipt data you want to receive in the response. Can be one or both of:<\/p>\n<!-- list separator -->\n<ul>\n<li><span translate=\"no\"><strong>CashierReceipt<\/strong><\/span>: cashier receipt, including signature data.<\/li>\n<li>\n<p><span translate=\"no\"><strong>CustomerReceipt<\/strong><\/span>: shopper receipt.<\/p>\n<!-- list separator -->\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><code>MessageReference<\/code>: this object identifies what you want to receive:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Parameter<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><code>MessageCategory<\/code><\/td>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>Payment<\/strong><\/span>.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>SaleID<\/code><\/td>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>AdyenGiving<\/strong><\/span>. If you specify this <code>SaleID<\/code> and omit the <code>ServiceID<\/code>, you will get the response for the latest donation made on the terminal that you route the transaction status request to.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>ServiceID<\/code><\/td>\n<td style=\"text-align: left;\">The <code>adyen_giving_service_id<\/code> from the original payment response. Use this parameter to retrieve the response for a specific donation instead of the latest donation made on the terminal.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>The example below shows how to check the status of a donation with the <code>adyen_giving_service_id<\/code> <strong>8ha5925831<\/strong>.<\/p>\n<div data-component-wrapper=\"code-sample\">\n<code-sample :title=\"''\" :id=\"'transaction-status'\" :code-data='[{\"language\":\"json\",\"tabTitle\":\"JSON\",\"content\":\"{\\n    \\\"SaleToPOIRequest\\\": {\\n        \\\"MessageHeader\\\": {\\n            \\\"ProtocolVersion\\\": \\\"3.0\\\",\\n            \\\"MessageClass\\\": \\\"Service\\\",\\n            \\\"MessageCategory\\\": \\\"TransactionStatus\\\",\\n            \\\"MessageType\\\": \\\"Request\\\",\\n            \\\"SaleID\\\": \\\"POSSystemID12345\\\",\\n            \\\"ServiceID\\\": \\\"29246\\\",\\n            \\\"POIID\\\": \\\"M400-260193322\\\"\\n        },\\n        \\\"TransactionStatusRequest\\\": {\\n            \\\"ReceiptReprintFlag\\\": true,\\n            \\\"DocumentQualifier\\\": [\\n                \\\"CashierReceipt\\\",\\n                \\\"CustomerReceipt\\\"\\n            ],\\n            \\\"MessageReference\\\": {\\n                \\\"MessageCategory\\\": \\\"Payment\\\",\\n                \\\"SaleID\\\": \\\"AdyenGiving\\\",\\n                \\\"ServiceID\\\": \\\"8ha5925831\\\"\\n            }\\n        }\\n    }\\n}\"},{\"language\":\"java\",\"tabTitle\":\"Java\",\"content\":\"String serviceID = \\\"YOUR_UNIQUE_ATTEMPT_ID\\\";\\n    String saleID = \\\"YOUR_CASH_REGISTER_ID\\\";\\n    String POIID = \\\"YOUR_TERMINAL_ID\\\";\\n    String transactionID = \\\"YOUR_UNIQUE_TRANSACTION_ID\\\";\\n\\n    SaleToPOIRequest saleToPOIRequest = new SaleToPOIRequest();\\n    MessageHeader messageHeader = new MessageHeader();\\n    messageHeader.setProtocolVersion(\\\"3.0\\\");\\n    messageHeader.setMessageClass( MessageClassType.SERVICE );\\n    messageHeader.setMessageCategory( MessageCategoryType.TRANSACTIONSTATUS );\\n    messageHeader.setMessageType( MessageType.REQUEST );\\n    messageHeader.setServiceID(serviceID);\\n    messageHeader.setSaleID(saleID);\\n    messageHeader.setPOIID(POIID);\\n    saleToPOIRequest.setMessageHeader(messageHeader);\\n\\n    TransactionStatusRequest transactionStatusRequest = new TansactionStatusRequest();\\n    transactionStatusRequest.setReceiptReprintFlag(true);\\n    transactionStatusRequest.setDocumentQualifier(\\\"CashierReceipt\\\", \\\"CustomerReceipt\\\");\\n\\n    MessageReference messageReference = new MessageReference();\\n    messageReference.setMessageCategory(\\\"Payment\\\");\\n    messageReference.setSaleID(\\\"AdyenGiving\\\");\\n    messageReference.setServiceID(\\\"8ha5925831\\\");\\n    transactionStatusRequest.setMessageReference(messageReference);\\n    saleToPOIRequest.setTransactionStatusRequest(transactionStatusRequest);\\n    terminalAPIRequest.setSaleToPOIRequest(saleToPOIRequest);\"}]' :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<\/li>\n<li>\n<p>In the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/terminal-api\/latest\/post\/transactionstatus#responses-200-Response\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">TransactionStatusResponse<\/a>, note the <code>RepeatedMessageResponse<\/code>. This contains the response for the donation transaction. Use the <code>RepeatedMessageResponse.PaymentReceipt<\/code> object to generate a shopper receipt for the donation.<\/p>\n<div data-component-wrapper=\"code-sample\">\n<code-sample :title=\"'Transaction status response with the donation response'\" :id=\"''\" :code-data='[{\"language\":\"json\",\"tabTitle\":\"\",\"content\":\"{\\n    \\\"SaleToPOIResponse\\\": {\\n        \\\"MessageHeader\\\": {\\n            \\\"MessageCategory\\\": \\\"TransactionStatus\\\",\\n            \\\"MessageClass\\\": \\\"Service\\\",\\n            \\\"MessageType\\\": \\\"Response\\\",\\n            \\\"POIID\\\": \\\"M400-260193322\\\",\\n            \\\"SaleID\\\": \\\"POSSystemID12345\\\",\\n            \\\"ServiceID\\\": \\\"29246\\\"\\n        },\\n        \\\"TransactionStatusResponse\\\": {\\n            \\\"MessageReference\\\": {\\n                \\\"MessageCategory\\\": \\\"Payment\\\",\\n                \\\"SaleID\\\": \\\"AdyenGiving\\\"\\n            },\\n            \\\"RepeatedMessageResponse\\\": {\\n                \\\"MessageHeader\\\": {\\n                    \\\"DeviceID\\\": \\\"6\\\",\\n                    \\\"MessageCategory\\\": \\\"Payment\\\",\\n                    \\\"MessageClass\\\": \\\"Service\\\",\\n                    \\\"MessageType\\\": \\\"Response\\\",\\n                    \\\"POIID\\\": \\\"M400-260193322\\\",\\n                    \\\"SaleID\\\": \\\"AdyenGiving\\\",\\n                    \\\"ServiceID\\\": \\\"8ha5925831\\\"\\n                },\\n                \\\"RepeatedResponseMessageBody\\\": {\\n                    \\\"PaymentResponse\\\": {\\n                        \\\"POIData\\\": {\\n                            \\\"POIReconciliationID\\\": \\\"1001\\\",\\n                            \\\"POITransactionID\\\": {\\n                                \\\"TimeStamp\\\": \\\"2020-12-02T16:16:48.000Z\\\",\\n                                \\\"TransactionID\\\": \\\"6JuQ001604433524001.NC6HT9CRT65ZGN82\\\"\\n                            }\\n                        },\\n                        \\\"PaymentReceipt\\\": [\\n                            {\\n                                \\\"DocumentQualifier\\\": \\\"CashierReceipt\\\",\\n                                ...\\n                            },\\n                            {\\n                                \\\"DocumentQualifier\\\": \\\"CustomerReceipt\\\",\\n                                ...\\n                            }\\n                        ],\\n                        \\\"PaymentResult\\\": {\\n                            \\\"AmountsResp\\\": {\\n                                \\\"AuthorizedAmount\\\": 5,\\n                                \\\"Currency\\\": \\\"EUR\\\"\\n                            },\\n                            \\\"OnlineFlag\\\": true,\\n                            \\\"PaymentAcquirerData\\\": {...},\\n                            \\\"PaymentInstrumentData\\\": {...}\\n                        },\\n                        \\\"Response\\\": {\\n                            \\\"AdditionalResponse\\\": \\\"...\\\",\\n                            \\\"Result\\\": \\\"Success\\\"\\n                        },\\n                        \\\"SaleData\\\": {\\n                            \\\"SaleTransactionID\\\": {\\n                                \\\"TimeStamp\\\": \\\"2020-11-03T19:58:44.000Z\\\",\\n                                \\\"TransactionID\\\": \\\"6JuQ001604433524001\\\"\\n                            }\\n                        }\\n                    }\\n                }\\n            },\\n            \\\"Response\\\": {\\n                \\\"AdditionalResponse\\\": \\\"...\\\",\\n                \\\"Result\\\": \\\"Success\\\"\\n            }\\n        }\\n    }\\n}\"}]' :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<\/li>\n<\/ol>\n<h2 id=\"giving-webhook\">Giving webhook<\/h2>\n<p>You can get the outcome of each donation in a webhook message. This enables you to inform shoppers by email or mobile messaging about their donation, provided you have the shopper's contact details.<\/p>\n<p>To receive these webhook messages, enable the <a href=\"\/development-resources\/webhooks\/webhook-types#other-webhooks\">Adyen Giving merchant webhook<\/a>, which includes <code>eventCode<\/code>: <span translate=\"no\"><strong>DONATION<\/strong><\/span>.<\/p>\n<p>For a successful donation, the event contains:<\/p>\n<ul>\n<li><code>success<\/code>: <span translate=\"no\"><strong>true<\/strong><\/span>.<\/li>\n<li><code>originalReference<\/code>: use this value to associate the donation with the shopper's original transaction.<\/li>\n<\/ul>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Successful donation webhook event'\" :id=\"''\" :code-data='[{\"language\":\"json\",\"tabTitle\":\"\",\"content\":\"{\\n  \\\"live\\\": \\\"false\\\",\\n  \\\"notificationItems\\\": [\\n    {\\n      \\\"NotificationRequestItem\\\": {\\n        \\\"additionalData\\\": {\\n          \\\"originalMerchantAccountCode\\\": \\\"YOUR_MERCHANT_ACCOUNT\\\"\\n        },\\n        \\\"amount\\\": {\\n          \\\"currency\\\": \\\"EUR\\\",\\n          \\\"value\\\": 500\\n        },\\n        \\\"originalReference\\\": \\\"V4HZ4RBFJGXXGN82\\\",\\n        \\\"eventCode\\\": \\\"DONATION\\\",\\n        \\\"eventDate\\\": \\\"2022-07-07T13:18:13+02:00\\\",\\n        \\\"merchantAccountCode\\\": \\\"CHARITY_DONATION_ACCOUNT\\\",\\n        \\\"merchantReference\\\": \\\"YOUR_DONATION_REFERENCE\\\",\\n        \\\"paymentMethod\\\": \\\"visa\\\",\\n        \\\"pspReference\\\": \\\"Z58FGTKBRCQ2WN27\\\",\\n        \\\"reason\\\": \\\"033899:1111:03\\\/2030\\\",\\n        \\\"success\\\": \\\"true\\\"\\n      }\\n    }\\n  ]\\n}\"}]' :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<h2>See also<\/h2>\n<div class=\"see-also-links output-inline\" id=\"see-also\">\n<ul><li><a href=\"\/platforms\/donations#campaign-lifecycle-management\"\n                        target=\"_self\"\n                        >\n                    Campaign lifecycle management\n                <\/a><\/li><li><a href=\"\/platforms\/online-payments\/donations-online\"\n                        target=\"_self\"\n                        >\n                    Giving for online platform payments\n                <\/a><\/li><li><a href=\"\/reporting\/donation-campaigns\"\n                        target=\"_self\"\n                        >\n                    Reports and dashboard\n                <\/a><\/li><\/ul><\/div>\n","url":"https:\/\/docs.adyen.com\/platforms\/in-person-payments\/donations-in-person","articleFields":{"description":"Enable your users to accept in-person donations from shoppers using Adyen Giving.","feedback_component":true,"parameters":{"payment_type":"ipp","model":"platform"},"filters_component":false},"algolia":{"url":"https:\/\/docs.adyen.com\/platforms\/in-person-payments\/donations-in-person","title":"In-person donations using Adyen Giving","content":"\nRead more&nbsp;Learn about Adyen Giving in your online checkout.\n\nWith Adyen Giving, your users can give shoppers the option to donate to a nonprofit organization when shoppers make an in-store purchase. To enable this, you set up donation campaigns for account holder resources.\nWhen a campaign has been started and a shopper chooses to donate, the donation is processed as a separate transaction. Adyen covers all fees and the donation amount is transferred to the nonprofit in full. This means you can split amounts and fees on the original transaction, but not on the donation transaction.\nRequirements\nBefore you begin, take into account the following requirements, limitations, and preparations.\n\n\n\nRequirement\nDescription\n\n\n\n\nIntegration type\nAdyen for Platforms merchants with a platform model, using a Terminal API integration with payment terminals or a Standalone solution. The terminals must use terminal software version 1.109 or later. Some terminals or features require software version 1.110 or later.\n\n\nCustomer Area roles\nMake sure that you have the following roles: Donation campaigns viewer: to view donation campaigns and access campaign insights. Donation campaigns manager: to create, start, edit, and end donation campaigns and access campaign insights.\n\n\nWebhooks\nSubscribe to the Adyen Giving merchant webhook.\n\n\nHardware\nSee Supported terminals for a list of terminal models that support Giving, and the donation settings that are supported on these terminals.\n\n\nLimitations\nNote the following limitations: The maximum number of account holders that you can assign to a donation campaign is 400. A store can only be part of one active campaign at the same time. Make sure that you are using supported payment methods and supported regions and currencies.\n\n\nSetup steps\nBefore you begin, make sure that the nonprofit you choose has been onboarded to Adyen, or pick one of our pre-approved nonprofits that have already been onboarded.\n\n\n\nHow it works\nTo enable your users to accept donations at the point of sale:\n\n\nChoose a nonprofit.\n\n\nSet up a donation campaign in your Customer Area, under Giving &gt; Campaigns.\nYou need to select:\n\nThe account holders that you want to make the campaign available to.\nThe nonprofit.\n\nThe stores and donation settings.\n\n\n\n\n\nOptionally configure a donation campaign logo to show as the standby screen on payment terminals.\n\n\nTo be able to inform shoppers about their donation, implement either or both of the following methods:\n\nGenerate a shopper receipt for the donation. This is only possible if you use the two-step interaction flow.\n\nUse Giving webhook messages to send shoppers a receipt by email or mobile messaging.\n\n\n\n\n\nStart the campaign from the Campaigns overview in your Customer Area.\n\n\nAfter the next scheduled reboot of the payment terminals, the terminals automatically show the donation options from the campaign after every payment, except when the terminal is offline or the payment method is not supported by Adyen Giving.\nDonation settings\nWith our Giving integration, you have the flexibility to choose a combination of interaction flow and donation type. You configure these choices in your donation campaign.\nHowever, there are limitations to the supported choices, depending on region and currency, payment method, and terminal model.\nInteraction flow\nYou can choose to use a one-step flow or a two-step flow. Technically, there are two transactions: one for the payment and one for the donation. But in the one-step flow, the payment and the donation are shown as a single transaction, and shoppers need to present their card only once.\nIn the two-step flow, shoppers need to present their card twice. With a Terminal API integration, this enables you to provide the shopper with a receipt for their donation, because you can retrieve the full donation transaction response. The two-step flow also supports more payment methods than the one-step flow.\nThe effect on your payment terminals is as follows:\n\n\nAfter you have set up and activated your donation campaign, both flows start in the same way:\n\nYou initiate a payment for the goods your shopper is purchasing.\n\nThe shopper presents their card on the payment terminal.\n\n\n\n\n\nFrom this moment, the flows are different:\n\n\n\nOne-step flow\nTwo-step flow\n\n\n\n\n\n\n\n\nThe terminal screen shows that the payment is approved, and...\n\n\n\n\nThe terminal presents the options to donate to the nonprofit.\n\n\n... the terminal also presents the options to donate to the nonprofit.\n\n\n\n\nIf the shopper chooses to donate, the terminal processes the donation.\n\n\nIf the shopper chooses to donate, the terminal starts the donation transaction for the amount the shopper specified and asks for the card.\n\n\n\n\n\n\n\nThe shopper presents their card on the terminal to complete the donation transaction.\n\n\n\n\nThe terminal shows a confirmation to thank the shopper.\n\n\nThe terminal shows a confirmation to thank the shopper.\n\n\n\n\nThe terminal shows that the payment is approved.\n\n\n\n\n\n\n\n\n\nIn both flows:\n\nThe terminal does not prompt for a donation when it is offline or after a gift card payment.\nIf the shopper selects the donation option Not now, the terminal shows a confirmation screen with a message that no donation was made.\n\nDonation type\nYou can present the following donation types on the payment terminal screen:\n\nFixed amounts: configure up to three fixed amounts to present to shoppers.\nRound up: allow shoppers to donate by rounding up the transaction amount of their purchase. You can enable the round-up feature on its own, or together with one fixed amount.\n\nThe terminal always shows a \"Not now\" option that the shopper can select to skip donating.\nThe following example screens are for the two-step flow, showing that the payment was approved.\n\n\n\nFixed amounts\nRound up\nRound up and one fixed amount\n\n\n\n\n\n\n\n\n\n\nSet up a donation campaign for account holders\nThe Campaigns user interface in the Customer Area guides you through setting up a donation campaign, and shows example screens. The main steps to create an Adyen Giving donation campaign for your account holders are as follows:\n\n\nIn your Customer Area, go to Giving &gt; Campaigns.\n\n\nSelect Create new campaign &gt; For account holders.\n\n\nAdd the account holders to the campaign, one by one or as a group:\n\nOne by one: select Search accounts, select your balance platform, and search by account holder ID or reference, legal entity ID or name, or email address. Then select Add in the tile of the individual account holder.\nGroup: select Submit a list of accounts, select your balance platform, enter a comma-separated list of account holder IDs, and select Add.\n\nThe UI will inform you if an account holder has already been added or cannot be found on the selected balance platform.\n\n\nSelect the campaign details:\n\nThe nonprofit.\nEither a specific cause, or \"General fundraising\".\n\nThe sales channel: online payments (ecommerce), in-person payments (point of sale), or both.\n\n\n\n\n\nIf you selected online payments, first select the stores that the campaign applies to.\nThen select the donation type. When you choose fixed amounts and enter the amounts in your default currency, we automatically add equivalent amounts in other currencies if necessary for the selected stores.\n\n\nIf you selected in-person payments, first select the stores that the campaign applies to.\nThen  select:\n\nThe one-step or two-step interaction flow.\nTimeouts for the donation prompt and the payment screen.\nThe text to show on the donation screen on the terminal: the name of the nonprofit or the cause you selected.\n\nThe donation type. When you choose fixed amounts and enter the amounts in your default currency, we automatically add equivalent amounts in other currencies if necessary for the selected stores.\n\n\n\n\n\nReview the summary. When everything is correct, select Create campaign.\n\n\nThe campaign is now set up, but not active yet.\nWhen you are ready to activate the campaign:\n\nIn your Customer Area, go to Giving &gt; Campaigns.\nFind the tile for the campaign, and select Start.\n\n(Optional) Configure a logo\n\nYou can configure your terminal's standby screen to show a logo for your donation campaign. Follow the instructions in the Customer Area under In-person payments &gt; Terminal Settings &gt; Customisation &gt; Logo.ModelRequirementsAMS 1Dimensions: 480 x 800 File size: max. 1 MBP630Dimensions: 320 x 480 File size: max. 1 MBe280Dimensions: 320 x 444 File size: max. 512 KBe285pDimensions: 240 x 284 File size: max. 512 KBM400Dimensions: 854 x 432 File size: max. 512 KBM450Dimensions: 1280 x 800 File size: max. 100 MBP400 PlusDimensions: 320 x 450 File size: max. 512 KBS1EDimensions: 720 x 1280 File size: max. 1 MBS1E2LDimensions: 720 x 1280 File size: max. 1 MBS1F2Dimensions: 720 x 1280 File size: max. 1 MBS1F2LDimensions: 720 x 1280 File size: max. 1 MBSFO1Dimensions: 1280 x 800 File size: max. 100 MBS1U2Dimensions: 720 x 1280 File size: max. 1 MBV240m PlusDimensions: 320 x 450 File size: max. 512 KBV400c PlusDimensions: 320 x 450 File size: max. 512 KBV400mDimensions: 320 x 450 File size: max. 512 KB\n(Optional) Get the two-step donation response\nIf you are using the two-step flow in a Terminal API integration, you can retrieve the full response for the donation transaction through a transaction status request.\nA reason to retrieve the donation response is that this includes a PaymentReceipt object that you can use to generate a shopper receipt for the donation.\n\nIt is only possible to retrieve the donation transaction response in the two-step flow.\n\n\n\nMake a transaction status request, specifying:\n\n\nThe standard \n  SaleToPOIRequest.MessageHeader\n object, with MessageClass set to Service and MessageCategory set to TransactionStatus.\n\n\n\nParameter\nRequired\nDescription\n\n\n\n\nProtocolVersion\n\n3.0\n\n\nMessageClass\n\nService\n\n\nMessageCategory\n\nTransactionStatus\n\n\nMessageType\n\nRequest\n\n\nSaleID\n\nYour unique ID for the POS system component to send this request from.\n\n\nServiceID\n\nYour unique ID for this request, consisting of 1-10 alphanumeric characters. Must be unique within the last 48 hours for the terminal (POIID) being used.\n\n\nPOIID\n\nThe unique ID of the terminal to send this request to. Format: [device model]-[serial number].\n\n\n\n\n\n\n\nThe  TransactionStatusRequest object with:\n\n\nReceiptReprintFlag: true\n\n\nDocumentQualifier: The receipt data you want to receive in the response. Can be one or both of:\n\n\nCashierReceipt: cashier receipt, including signature data.\n\nCustomerReceipt: shopper receipt.\n\n\n\n\n\nMessageReference: this object identifies what you want to receive:\n\n\n\nParameter\nDescription\n\n\n\n\nMessageCategory\nPayment.\n\n\nSaleID\nAdyenGiving. If you specify this SaleID and omit the ServiceID, you will get the response for the latest donation made on the terminal that you route the transaction status request to.\n\n\nServiceID\nThe adyen_giving_service_id from the original payment response. Use this parameter to retrieve the response for a specific donation instead of the latest donation made on the terminal.\n\n\n\n\n\n\n\nThe example below shows how to check the status of a donation with the adyen_giving_service_id 8ha5925831.\n\n\n\n\n\nIn the  TransactionStatusResponse, note the RepeatedMessageResponse. This contains the response for the donation transaction. Use the RepeatedMessageResponse.PaymentReceipt object to generate a shopper receipt for the donation.\n\n\n\n\n\nGiving webhook\nYou can get the outcome of each donation in a webhook message. This enables you to inform shoppers by email or mobile messaging about their donation, provided you have the shopper's contact details.\nTo receive these webhook messages, enable the Adyen Giving merchant webhook, which includes eventCode: DONATION.\nFor a successful donation, the event contains:\n\nsuccess: true.\noriginalReference: use this value to associate the donation with the shopper's original transaction.\n\n\n    \n\nSee also\n\n\n                    Campaign lifecycle management\n                \n                    Giving for online platform payments\n                \n                    Reports and dashboard\n                \n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Platforms","lvl2":"Process in-person payments","lvl3":"In-person donations using Adyen Giving"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/platforms","lvl2":"https:\/\/docs.adyen.com\/platforms\/in-person-payments","lvl3":"\/platforms\/in-person-payments\/donations-in-person"},"levels":4,"category":"Platforms","category_color":"green","tags":["In-person","donations","using","Adyen","Giving"]},"articleFiles":{"donated.png":"<img alt=\"\" src=\"https:\/\/docs.adyen.com\/user\/pages\/docs\/05.platforms\/28.in-person-payments\/08.donations-in-person\/donated.png\" \/>","fixed-amounts-one-step.png":"<img alt=\"\" src=\"https:\/\/docs.adyen.com\/user\/pages\/docs\/05.platforms\/28.in-person-payments\/08.donations-in-person\/fixed-amounts-one-step.png\" \/>","fixed-amounts.png":"<img alt=\"\" src=\"https:\/\/docs.adyen.com\/images\/0\/7\/3\/3\/a\/0733a7ca6e18b9a551fe19e2b12ab0513b2071a0-fixed-amounts.png\" \/>","pos-logo.png":"<img alt=\"\" src=\"https:\/\/docs.adyen.com\/user\/pages\/docs\/05.platforms\/28.in-person-payments\/08.donations-in-person\/pos-logo.png\" \/>","round-up-and-fixed.png":"<img alt=\"\" src=\"https:\/\/docs.adyen.com\/images\/1\/a\/1\/3\/e\/1a13e0500257fb125b6e4a15ab64b37fe236331f-round-up-and-fixed.png\" \/>","round-up.png":"<img alt=\"\" src=\"https:\/\/docs.adyen.com\/images\/d\/e\/a\/9\/b\/dea9b78f4686affcee90f7fccfacb6eb92d2b9da-round-up.png\" \/>","TandC.png":"<img alt=\"\" src=\"https:\/\/docs.adyen.com\/user\/pages\/docs\/05.platforms\/28.in-person-payments\/08.donations-in-person\/TandC.png\" \/>","giving.svg":"<img style=\"width: 28px;\" alt=\"\" src=\"https:\/\/docs.adyen.com\/user\/pages\/docs\/05.platforms\/28.in-person-payments\/08.donations-in-person\/giving.svg?decoding=auto&amp;fetchpriority=auto\" \/>"}}
