{"title":"Referenced refund","category":"default","creationDate":1737548880,"content":"<p>To return funds to a shopper after a payment is approved, you need to refund the payment. Referenced refunds are connected to the original payment, using the unique identifier of that payment.<\/p>\n<p>When you make a POS payment, the Terminal API response returns the <a href=\"\/pt\/point-of-sale\/design-your-integration\/terminal-api#response-body\">transaction identifier<\/a> of the payment in the format <code>tenderReference.pspReference<\/code>. To make a referenced refund, you specify this transaction identifier in your refund request. This lets us validate the refund against the original payment, to ensure that it hasn't already been refunded.<\/p>\n<p>You can make a:<\/p>\n<ul>\n<li><strong>Full refund<\/strong> to return the total value of the purchase to the shopper.<\/li>\n<li><strong>Partial refund<\/strong> to return part of the purchase to the shopper. For example, when a shopper returns one of the items they purchased. You can also make multiple partial refunds. For example, when a shopper returns several items at different times.<\/li>\n<\/ul>\n<h2>Requirements<\/h2>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Requirement<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><strong>Integration type<\/strong><\/td>\n<td style=\"text-align: left;\">A <a href=\"\/pt\/point-of-sale\/basic-tapi-integration\/\">Terminal API integration<\/a> with payment terminals or with a <a href=\"\/pt\/point-of-sale\/ipp-mobile\/\">Mobile solution<\/a>.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong><a href=\"\/pt\/development-resources\/webhooks\">Webhooks<\/a><\/strong><\/td>\n<td style=\"text-align: left;\">Subscribe to the following webhook: <ul><li markdown=\"1\"><strong><a href=\"\/pt\/point-of-sale\/basic-tapi-integration\/refund-payment\/refund-webhooks#cancel-or-refund-webhook\/\">CANCEL_OR_REFUND webhook<\/a><\/strong><\/li><\/ul><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Limitations<\/strong><\/td>\n<td style=\"text-align: left;\">Take into account the following limitations for <a href=\"#refund-offline-payment\">refunding an offline payment when back online<\/a> in a Mobile solution: <ul><li markdown=\"1\">This type of refund is only supported in a iOS Mobile solution.<\/li><li markdown=\"1\"><a href=\"\/pt\/point-of-sale\/offline-payment\">Store and Forward offline payments<\/a> for Tap to Pay on iPhone is currently only supported in the US.<\/li><\/ul><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Setup steps<\/strong><\/td>\n<td style=\"text-align: left;\">Optionally, set up <a href=\"\/pt\/point-of-sale\/offline-payment\/\">offline payments<\/a> to be able to <a href=\"#refund-offline-payment\">refund an offline payment when back online<\/a>.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\"referenced-request\">Make a referenced refund<\/h2>\n<p>Select a tab to see the parameters that you need to specify for a full referenced refund, or a partial referenced refund.<\/p>\n\n<div id=\"tabqAKTi\">\n    <div data-component-wrapper=\"tabs\">\n        <tabs\n                        :items=\"[{&quot;title&quot;:&quot;Full refund&quot;,&quot;content&quot;:&quot;\\n&lt;p&gt;Here we describe the &lt;strong&gt;basic&lt;\\\/strong&gt; referenced refund request for the full amount. To &lt;a href=\\&quot;#refund-offline-payment\\&quot;&gt;refund an offline payment&lt;\\\/a&gt; or to &lt;a href=\\&quot;#refund-ecommerce-payment\\&quot;&gt;refund an ecommerce payment&lt;\\\/a&gt;, the request is a little different.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;TransactionID&lt;\\\/code&gt; and the &lt;code&gt;TimeStamp&lt;\\\/code&gt; of the original payment. You received these values in the payment response, in the &lt;code&gt;POIData.POITransactionID&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Make a &lt;a href=\\&quot;\\\/pt\\\/point-of-sale\\\/design-your-integration\\\/terminal-api\\&quot;&gt;Terminal API&lt;\\\/a&gt; reversal request, specifying:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;\\n&lt;p&gt;The standard &lt;a href=\\&quot;\\\/pt\\\/point-of-sale\\\/design-your-integration\\\/terminal-api#request-message-header\\&quot;&gt;\\n  &lt;code&gt;SaleToPOIRequest.MessageHeader&lt;\\\/code&gt;\\n&lt;\\\/a&gt; object, with &lt;code&gt;MessageClass&lt;\\\/code&gt; set to &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Service&lt;\\\/strong&gt;&lt;\\\/span&gt; and &lt;code&gt;MessageCategory&lt;\\\/code&gt; set to &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Reversal&lt;\\\/strong&gt;&lt;\\\/span&gt;.&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;Parameter&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&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;code&gt;ProtocolVersion&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;3.0&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;MessageClass&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Service&lt;\\\/strong&gt;&lt;\\\/span&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;MessageCategory&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Reversal&lt;\\\/strong&gt;&lt;\\\/span&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;MessageType&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Request&lt;\\\/strong&gt;&lt;\\\/span&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;ServiceID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Your unique ID for this request, consisting of 1-10 alphanumeric characters. Must be unique within the last 48 hours for the terminal (&lt;code&gt;POIID&lt;\\\/code&gt;) being used.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;SaleID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Your unique ID for the POS system component to send this request from.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;POIID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;The unique ID of the terminal to send this request to. Format: &lt;em&gt;[device model]-[serial number]&lt;\\\/em&gt;.&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  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/terminal-api\\\/latest\\\/post\\\/reversal\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;ReversalRequest&lt;\\\/a&gt; object with:&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;Parameter&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&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;code&gt;OriginalPOITransaction.POITransactionID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;An object with: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;TransactionID&lt;\\\/code&gt;: Transaction identifier of the original payment in the format &lt;code&gt;tenderReference.pspReference&lt;\\\/code&gt;. For example, &lt;strong&gt;BV0q001643892070000.VK9DRSLLRCQ2WN82&lt;\\\/strong&gt;&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;TimeStamp&lt;\\\/code&gt;: Date and time in &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_8601#Coordinated_Universal_Time_(UTC)\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;UTC format&lt;\\\/a&gt; of the original payment. For example, &lt;strong&gt;2000-01-01T00:00:00.000Z&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;code&gt;ReversalReason&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Set to &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;MerchantCancel&lt;\\\/strong&gt;&lt;\\\/span&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The following example shows how to make a full referenced refund.&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;full-sample_0&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;JSON\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;SaleToPOIRequest\\\\\\&quot;:{\\\\n      \\\\\\&quot;MessageHeader\\\\\\&quot;:{\\\\n         \\\\\\&quot;ProtocolVersion\\\\\\&quot;:\\\\\\&quot;3.0\\\\\\&quot;,\\\\n         \\\\\\&quot;MessageClass\\\\\\&quot;:\\\\\\&quot;Service\\\\\\&quot;,\\\\n         \\\\\\&quot;MessageCategory\\\\\\&quot;:\\\\\\&quot;Reversal\\\\\\&quot;,\\\\n         \\\\\\&quot;MessageType\\\\\\&quot;:\\\\\\&quot;Request\\\\\\&quot;,\\\\n         \\\\\\&quot;SaleID\\\\\\&quot;:\\\\\\&quot;POSSystemID12345\\\\\\&quot;,\\\\n         \\\\\\&quot;ServiceID\\\\\\&quot;:\\\\\\&quot;0207111105\\\\\\&quot;,\\\\n         \\\\\\&quot;POIID\\\\\\&quot;:\\\\\\&quot;V400m-324688179\\\\\\&quot;\\\\n      },\\\\n      \\\\\\&quot;ReversalRequest\\\\\\&quot;:{\\\\n         \\\\\\&quot;OriginalPOITransaction\\\\\\&quot;:{\\\\n            \\\\\\&quot;POITransactionID\\\\\\&quot;:{\\\\n               \\\\\\&quot;TransactionID\\\\\\&quot;:\\\\\\&quot;BV0q001643892070000.VK9DRSLLRCQ2WN82\\\\\\&quot;,\\\\n               \\\\\\&quot;TimeStamp\\\\\\&quot;:\\\\\\&quot;2022-01-31T12:08:45.004Z\\\\\\&quot;\\\\n            }\\\\n         },\\\\n         \\\\\\&quot;ReversalReason\\\\\\&quot;:\\\\\\&quot;MerchantCancel\\\\\\&quot;\\\\n      }\\\\n   }\\\\n}\\&quot;},{\\&quot;language\\&quot;:\\&quot;java\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;Java\\&quot;,\\&quot;content\\&quot;:\\&quot;String saleID = \\\\\\&quot;YOUR_CASH_REGISTER_ID\\\\\\&quot;;\\\\nString serviceID = \\\\\\&quot;YOUR_UNIQUE_ATTEMPT_ID\\\\\\&quot;;\\\\nString POIID = \\\\\\&quot;YOUR_TERMINAL_ID\\\\\\&quot;;\\\\nString transactionID = \\\\\\&quot;YOUR_UNIQUE_TRANSACTION_ID\\\\\\&quot;;\\\\n\\\\nSaleToPOIRequest saleToPOIRequest = new SaleToPOIRequest();\\\\nMessageHeader messageHeader = new MessageHeader();\\\\nmessageHeader.setProtocolVersion(\\\\\\&quot;3.0\\\\\\&quot;);\\\\nmessageHeader.setMessageClass( MessageClassType.SERVICE );\\\\nmessageHeader.setMessageCategory( MessageCategoryType.REVERSAL );\\\\nmessageHeader.setMessageType( MessageType.REQUEST );\\\\nmessageHeader.setSaleID(saleID);\\\\nmessageHeader.setServiceID(serviceID);\\\\nmessageHeader.setPOIID(POIID);\\\\nsaleToPOIRequest.setMessageHeader(messageHeader);\\\\n\\\\nReversalRequest reversalRequest = new ReversalRequest();\\\\nOriginalPOITransaction originalPOITransaction = new OriginalPOITransaction();\\\\nTransactionIdentification pOITransactionID = new TransactionIdentification();\\\\npOITransactionID.setTransactionID(transactionID);\\\\npOITransactionID.setTimeStamp(DatatypeFactory.newInstance().newXMLGregorianCalendar(new GregorianCalendar()));\\\\noriginalPOITransaction.setPOITransactionID(pOITransactionID);\\\\nreversalRequest.setOriginalPOITransaction(originalPOITransaction);\\\\nreversalRequest.setReversalReason( ReversalReasonType.MERCHANT_CANCEL );\\\\nsaleToPOIRequest.setReversalRequest(reversalRequest);\\\\nterminalAPIRequest.setSaleToPOIRequest(saleToPOIRequest);\\&quot;}]&#039; :enable-copy-link-to-code-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 payment terminal shows a waiting screen until you receive the response.&lt;br \\\/&gt;\\n&lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/docs\\\/03.point-of-sale\\\/05.basic-tapi-integration\\\/05.refund-payment\\\/01.referenced\\\/WaitingScreen.png\\&quot; \\\/&gt;&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;When you receive the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/terminal-api\\\/latest\\\/post\\\/reversal\\\/#responses-200\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;ReversalResponse&lt;\\\/a&gt;, note the following:&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;Parameter&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;code&gt;Response.Result&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Success&lt;\\\/strong&gt;&lt;\\\/span&gt; means we received your request. The refund itself will be processed asynchronously.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;POIData.POITransactionID.TransactionID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;The PSP reference for this refund request.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;PaymentReceipt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;The generated receipt data. This includes &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;REFUND REQUESTED&lt;\\\/strong&gt;&lt;\\\/span&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;Response.AdditionalResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;This includes: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;posOriginalAmountValue&lt;\\\/code&gt;: The amount (in &lt;a href=\\&quot;\\\/pt\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;) of the original payment.&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;posAuthAmountValue&lt;\\\/code&gt;: The refund amount (in minor units) that we will try to get authorized.&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;pspReference&lt;\\\/code&gt;: The PSP reference for this refund request.&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;Response when we received your full reversal request&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;SaleToPOIResponse\\\\\\&quot;:{\\\\n      \\\\\\&quot;MessageHeader\\\\\\&quot;:{\\\\n         \\\\\\&quot;MessageCategory\\\\\\&quot;:\\\\\\&quot;Reversal\\\\\\&quot;,\\\\n         \\\\\\&quot;MessageClass\\\\\\&quot;:\\\\\\&quot;Service\\\\\\&quot;,\\\\n         \\\\\\&quot;MessageType\\\\\\&quot;:\\\\\\&quot;Response\\\\\\&quot;,\\\\n         \\\\\\&quot;POIID\\\\\\&quot;:\\\\\\&quot;V400m-324688179\\\\\\&quot;,\\\\n         \\\\\\&quot;ProtocolVersion\\\\\\&quot;:\\\\\\&quot;3.0\\\\\\&quot;,\\\\n         \\\\\\&quot;SaleID\\\\\\&quot;:\\\\\\&quot;POSSystemID12345\\\\\\&quot;,\\\\n         \\\\\\&quot;ServiceID\\\\\\&quot;:\\\\\\&quot;207111107\\\\\\&quot;\\\\n      },\\\\n      \\\\\\&quot;ReversalResponse\\\\\\&quot;:{\\\\n         \\\\\\&quot;POIData\\\\\\&quot;:{\\\\n            \\\\\\&quot;POITransactionID\\\\\\&quot;:{\\\\n               \\\\\\&quot;TimeStamp\\\\\\&quot;:\\\\\\&quot;2022-02-03T15:04:15.004Z\\\\\\&quot;,\\\\n               \\\\\\&quot;TransactionID\\\\\\&quot;:\\\\\\&quot;TF995R5G6L2GWR82\\\\\\&quot;\\\\n            }\\\\n         },\\\\n         \\\\\\&quot;PaymentReceipt\\\\\\&quot;:[\\\\n            \\\\\\&quot;...\\\\\\&quot;\\\\n         ],\\\\n         \\\\\\&quot;Response\\\\\\&quot;:{\\\\n            \\\\\\&quot;AdditionalResponse\\\\\\&quot;:\\\\\\&quot;tid=47069832&amp;amp;transactionType=GOODS_SERVICES&amp;amp;posadditionalamounts.originalAmountValue=1025&amp;amp;giftcardIndicator=false&amp;amp;posAmountGratuityValue=0&amp;amp;pspReference=TF995R5G6L2GWR82&amp;amp;store=YOUR_STOREL&amp;amp;iso8601TxDate=2022-02-03T15%3a04%3a13.0000000%2b0000&amp;amp;posOriginalAmountValue=1025&amp;amp;txtime=16%3a04%3a13&amp;amp;paymentMethod=mc&amp;amp;txdate=03-02-2022&amp;amp;merchantReference=2022-02-03%2016%3a04%3a13&amp;amp;posadditionalamounts.originalAmountCurrency=EUR&amp;amp;transactionReferenceNumber=TF995R5G6L2GWR82&amp;amp;posAuthAmountCurrency=EUR&amp;amp;posAmountCashbackValue=0&amp;amp;posEntryMode=CLESS_CHIP&amp;amp;posAuthAmountValue=1025\\\\\\&quot;,\\\\n            \\\\\\&quot;Result\\\\\\&quot;:\\\\\\&quot;Success\\\\\\&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;If your request failed, the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/terminal-api\\\/latest\\\/post\\\/reversal\\\/#responses-200-Response\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;ReversalResponse.Response&lt;\\\/a&gt; contains:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;Result&lt;\\\/code&gt;: &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Failure&lt;\\\/strong&gt;&lt;\\\/span&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;AdditionalResponse&lt;\\\/code&gt;: This includes a &lt;code&gt;message&lt;\\\/code&gt; explaining why the request failed. For example:\\n&lt;ul&gt;\\n&lt;li&gt;&lt;em&gt;Original pspReference required for this operation&lt;\\\/em&gt;: Messages like this tell you how to fix the request so you can try again.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;em&gt;Transaction is already voided&lt;\\\/em&gt;: This message tells you that we already received a full reversal request for the original transaction. &lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;!-- list separator --&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Wait for the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Webhooks\\\/latest\\\/post\\\/CANCEL_OR_REFUND\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;CANCEL_OR_REFUND&lt;\\\/a&gt; webhook event to learn the outcome of the refund request. Refunds are always processed asynchronously.&lt;\\\/p&gt;\\n&quot;,&quot;altTitle&quot;:&quot;full&quot;,&quot;oldTabId&quot;:&quot;full_refund_0_1&quot;,&quot;relation&quot;:&quot;full&quot;},{&quot;title&quot;:&quot;Partial refund&quot;,&quot;content&quot;:&quot;\\n&lt;p&gt;Here we describe the &lt;strong&gt;basic&lt;\\\/strong&gt; referenced refund request for a partial amount. To &lt;a href=\\&quot;#refund-offline-payment\\&quot;&gt;refund an offline payment&lt;\\\/a&gt; or to &lt;a href=\\&quot;#refund-ecommerce-payment\\&quot;&gt;refund an ecommerce payment&lt;\\\/a&gt;, the request is a little different.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Get the &lt;code&gt;TransactionID&lt;\\\/code&gt; and the &lt;code&gt;TimeStamp&lt;\\\/code&gt; of the original payment. You received these values in the payment response, in the &lt;code&gt;POIData.POITransactionID&lt;\\\/code&gt; object.&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Make a &lt;a href=\\&quot;\\\/pt\\\/point-of-sale\\\/design-your-integration\\\/terminal-api\\&quot;&gt;Terminal API&lt;\\\/a&gt; reversal request, specifying:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;\\n&lt;p&gt;The standard &lt;a href=\\&quot;\\\/pt\\\/point-of-sale\\\/design-your-integration\\\/terminal-api#request-message-header\\&quot;&gt;\\n  &lt;code&gt;SaleToPOIRequest.MessageHeader&lt;\\\/code&gt;\\n&lt;\\\/a&gt; object, with &lt;code&gt;MessageClass&lt;\\\/code&gt; set to &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Service&lt;\\\/strong&gt;&lt;\\\/span&gt; and &lt;code&gt;MessageCategory&lt;\\\/code&gt; set to &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Reversal&lt;\\\/strong&gt;&lt;\\\/span&gt;.&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;Parameter&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&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;code&gt;ProtocolVersion&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;strong&gt;3.0&lt;\\\/strong&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;MessageClass&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Service&lt;\\\/strong&gt;&lt;\\\/span&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;MessageCategory&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Reversal&lt;\\\/strong&gt;&lt;\\\/span&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;MessageType&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Request&lt;\\\/strong&gt;&lt;\\\/span&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;ServiceID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Your unique ID for this request, consisting of 1-10 alphanumeric characters. Must be unique within the last 48 hours for the terminal (&lt;code&gt;POIID&lt;\\\/code&gt;) being used.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;SaleID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Your unique ID for the POS system component to send this request from.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;POIID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;The unique ID of the terminal to send this request to. Format: &lt;em&gt;[device model]-[serial number]&lt;\\\/em&gt;.&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  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/terminal-api\\\/latest\\\/post\\\/reversal\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;ReversalRequest&lt;\\\/a&gt; object with:&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;Parameter&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&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;code&gt;OriginalPOITransaction.POITransactionID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;An object with: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;TransactionID&lt;\\\/code&gt;: Transaction identifier of the original payment in the format &lt;code&gt;tenderReference.pspReference&lt;\\\/code&gt;. For example, &lt;strong&gt;BV0q001643892070000.VK9DRSLLRCQ2WN82&lt;\\\/strong&gt;&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;TimeStamp&lt;\\\/code&gt;: date and time in &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_8601#Coordinated_Universal_Time_(UTC)\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;UTC format&lt;\\\/a&gt; of the original payment. For example, &lt;strong&gt;2000-01-01T00:00:00.000Z&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;code&gt;ReversalReason&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Set to &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;MerchantCancel&lt;\\\/strong&gt;&lt;\\\/span&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;ReversedAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;The amount (provided as a number, not a string) being returned to the shopper in the partial refund. Must be smaller than or equal to the initial payment amount.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;SaleData.SaleToAcquirerData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;The currency of the refund, in the format &lt;code&gt;currency=ABC&lt;\\\/code&gt; where &lt;code&gt;ABC&lt;\\\/code&gt; is the three-letter &lt;a href=\\&quot;\\\/pt\\\/development-resources\\\/currency-codes\\&quot;&gt;currency code&lt;\\\/a&gt;. This must match the currency of the original payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;SaleData.SaleTransactionID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;An object with: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;TransactionID&lt;\\\/code&gt;: your reference for the refund. In your Customer Area and Adyen reports, this will show as the &lt;strong&gt;merchant reference&lt;\\\/strong&gt;.&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;TimeStamp&lt;\\\/code&gt;: date and time in &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_8601#Coordinated_Universal_Time_(UTC)\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;UTC format&lt;\\\/a&gt; of the refund.&lt;\\\/li&gt;&lt;\\\/ul&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;The following example shows how to make a partial referenced refund of EUR&amp;nbsp;6.00.&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;partial-sample_1&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;JSON\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;SaleToPOIRequest\\\\\\&quot;:{\\\\n      \\\\\\&quot;MessageHeader\\\\\\&quot;:{\\\\n         \\\\\\&quot;ProtocolVersion\\\\\\&quot;:\\\\\\&quot;3.0\\\\\\&quot;,\\\\n         \\\\\\&quot;MessageClass\\\\\\&quot;:\\\\\\&quot;Service\\\\\\&quot;,\\\\n         \\\\\\&quot;MessageCategory\\\\\\&quot;:\\\\\\&quot;Reversal\\\\\\&quot;,\\\\n         \\\\\\&quot;MessageType\\\\\\&quot;:\\\\\\&quot;Request\\\\\\&quot;,\\\\n         \\\\\\&quot;SaleID\\\\\\&quot;:\\\\\\&quot;POSSystemID12345\\\\\\&quot;,\\\\n         \\\\\\&quot;ServiceID\\\\\\&quot;:\\\\\\&quot;207111108\\\\\\&quot;,\\\\n         \\\\\\&quot;POIID\\\\\\&quot;:\\\\\\&quot;V400m-324688179\\\\\\&quot;\\\\n      },\\\\n      \\\\\\&quot;ReversalRequest\\\\\\&quot;:{\\\\n         \\\\\\&quot;OriginalPOITransaction\\\\\\&quot;:{\\\\n            \\\\\\&quot;POITransactionID\\\\\\&quot;:{\\\\n               \\\\\\&quot;TransactionID\\\\\\&quot;:\\\\\\&quot;BV0q001643892070000.VK9DRSLLRCQ2WN82\\\\\\&quot;,\\\\n               \\\\\\&quot;TimeStamp\\\\\\&quot;:\\\\\\&quot;2022-01-31T12:08:45.004Z\\\\\\&quot;\\\\n            }\\\\n         },\\\\n         \\\\\\&quot;ReversalReason\\\\\\&quot;:\\\\\\&quot;MerchantCancel\\\\\\&quot;,\\\\n         \\\\\\&quot;ReversedAmount\\\\\\&quot;:6.00,\\\\n         \\\\\\&quot;SaleData\\\\\\&quot;:{\\\\n            \\\\\\&quot;SaleToAcquirerData\\\\\\&quot;:\\\\\\&quot;currency=EUR\\\\\\&quot;,\\\\n            \\\\\\&quot;SaleTransactionID\\\\\\&quot;:{\\\\n               \\\\\\&quot;TimeStamp\\\\\\&quot;:\\\\\\&quot;2022-02-03T15:04:14.004Z\\\\\\&quot;,\\\\n               \\\\\\&quot;TransactionID\\\\\\&quot;:\\\\\\&quot;rev-708\\\\\\&quot;\\\\n            }\\\\n         }\\\\n      }\\\\n   }\\\\n}\\&quot;},{\\&quot;language\\&quot;:\\&quot;java\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;Java\\&quot;,\\&quot;content\\&quot;:\\&quot;String saleID = \\\\\\&quot;YOUR_CASH_REGISTER_ID\\\\\\&quot;;\\\\nString serviceID = \\\\\\&quot;YOUR_UNIQUE_ATTEMPT_ID\\\\\\&quot;;\\\\nString POIID = \\\\\\&quot;YOUR_TERMINAL_ID\\\\\\&quot;;\\\\nString transactionID = \\\\\\&quot;YOUR_UNIQUE_TRANSACTION_ID\\\\\\&quot;;\\\\n\\\\nSaleToPOIRequest saleToPOIRequest = new SaleToPOIRequest();\\\\nMessageHeader messageHeader = new MessageHeader();\\\\nmessageHeader.setProtocolVersion(\\\\\\&quot;3.0\\\\\\&quot;);\\\\nmessageHeader.setMessageClass( MessageClassType.SERVICE );\\\\nmessageHeader.setMessageCategory( MessageCategoryType.REVERSAL );\\\\nmessageHeader.setMessageType( MessageType.REQUEST );\\\\nmessageHeader.setSaleID(saleID);\\\\nmessageHeader.setServiceID(serviceID);\\\\nmessageHeader.setPOIID(POIID);\\\\nsaleToPOIRequest.setMessageHeader(messageHeader);\\\\n\\\\nReversalRequest reversalRequest = new ReversalRequest();\\\\nOriginalPOITransaction originalPOITransaction = new OriginalPOITransaction();\\\\nTransactionIdentification pOITransactionID = new TransactionIdentification();\\\\npOITransactionID.setTransactionID(transactionID);\\\\npOITransactionID.setTimeStamp(DatatypeFactory.newInstance().newXMLGregorianCalendar(new GregorianCalendar()));\\\\noriginalPOITransaction.setPOITransactionID(pOITransactionID);\\\\nreversalRequest.setOriginalPOITransaction(originalPOITransaction);\\\\nreversalRequest.setReversalReason( ReversalReasonType.MERCHANT_CANCEL );\\\\nreversalRequest.setReversedAmount(6.0);\\\\n\\\\nSaleData saleData = new SaleData();\\\\nsaleData.setSaleToAcquirerData(\\\\\\&quot;currency=EUR\\\\\\&quot;);\\\\nTransactionIdentification saleTransactionID = new TransactionIdentification();\\\\nsaleTransactionID.setTimeStamp(DatatypeFactory.newInstance().newXMLGregorianCalendar(new GregorianCalendar()));\\\\nsaleTransactionID.setTransactionID(transactionID);\\\\nsaleData.setSaleTransactionID(saleTransactionID);\\\\nreversalRequest.setSaleData(saleData);\\\\nsaleToPOIRequest.setReversalRequest(reversalRequest);\\\\nterminalAPIRequest.setSaleToPOIRequest(saleToPOIRequest);\\&quot;}]&#039; :enable-copy-link-to-code-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 payment terminal shows a waiting screen until you receive the response.&lt;br \\\/&gt;\\n&lt;img alt=\\&quot;\\&quot; src=\\&quot;\\\/user\\\/pages\\\/docs\\\/03.point-of-sale\\\/05.basic-tapi-integration\\\/05.refund-payment\\\/01.referenced\\\/WaitingScreen.png\\&quot; \\\/&gt;&lt;\\\/p&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;When you receive the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/terminal-api\\\/latest\\\/post\\\/reversal\\\/#responses-200\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;ReversalResponse&lt;\\\/a&gt; note the following:&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;Parameter&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;code&gt;Response.Result&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Success&lt;\\\/strong&gt;&lt;\\\/span&gt; means we received your request. The refund itself will be processed asynchronously.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;Response.ReversedAmount&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;The partial refund amount that we will try to get authorized.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;POIData.POITransactionID.TransactionID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;The PSP reference for this refund request.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;PaymentReceipt&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;The generated receipt data. This includes &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;REFUND REQUESTED&lt;\\\/strong&gt;&lt;\\\/span&gt;.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;Response.AdditionalResponse&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;This includes: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;posOriginalAmountValue&lt;\\\/code&gt;: The amount (in &lt;a href=\\&quot;\\\/pt\\\/development-resources\\\/currency-codes\\&quot;&gt;minor units&lt;\\\/a&gt;) of the original payment.&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;posAuthAmountValue&lt;\\\/code&gt;: The refund amount (in minor units) that we will try to get authorized.&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;merchantReference&lt;\\\/code&gt;: The &lt;code&gt;SaleData.SaleTransactionID.TransactionID&lt;\\\/code&gt; from the partial refund request.&lt;\\\/li&gt; &lt;li markdown=\\&quot;1\\&quot;&gt;&lt;code&gt;pspReference&lt;\\\/code&gt;: The PSP reference for this refund request.&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;Response when we received your partial reversal request&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;SaleToPOIResponse\\\\\\&quot;:{\\\\n      \\\\\\&quot;MessageHeader\\\\\\&quot;:{\\\\n         \\\\\\&quot;MessageCategory\\\\\\&quot;:\\\\\\&quot;Reversal\\\\\\&quot;,\\\\n         \\\\\\&quot;MessageClass\\\\\\&quot;:\\\\\\&quot;Service\\\\\\&quot;,\\\\n         \\\\\\&quot;MessageType\\\\\\&quot;:\\\\\\&quot;Response\\\\\\&quot;,\\\\n         \\\\\\&quot;POIID\\\\\\&quot;:\\\\\\&quot;V400m-324688179\\\\\\&quot;,\\\\n         \\\\\\&quot;ProtocolVersion\\\\\\&quot;:\\\\\\&quot;3.0\\\\\\&quot;,\\\\n         \\\\\\&quot;SaleID\\\\\\&quot;:\\\\\\&quot;POSSystemID12345\\\\\\&quot;,\\\\n         \\\\\\&quot;ServiceID\\\\\\&quot;:\\\\\\&quot;207111107\\\\\\&quot;\\\\n      },\\\\n      \\\\\\&quot;ReversalResponse\\\\\\&quot;:{\\\\n         \\\\\\&quot;POIData\\\\\\&quot;:{\\\\n            \\\\\\&quot;POITransactionID\\\\\\&quot;:{\\\\n               \\\\\\&quot;TimeStamp\\\\\\&quot;:\\\\\\&quot;2022-02-03T15:04:15.004Z\\\\\\&quot;,\\\\n               \\\\\\&quot;TransactionID\\\\\\&quot;:\\\\\\&quot;TF995R5G6L2GWR82\\\\\\&quot;\\\\n            }\\\\n         },\\\\n         \\\\\\&quot;PaymentReceipt\\\\\\&quot;:[\\\\n            \\\\\\&quot;...\\\\\\&quot;\\\\n         ],\\\\n         \\\\\\&quot;Response\\\\\\&quot;:{\\\\n            \\\\\\&quot;AdditionalResponse\\\\\\&quot;:\\\\\\&quot;tid=47069832&amp;amp;transactionType=GOODS_SERVICES&amp;amp;posadditionalamounts.originalAmountValue=1025&amp;amp;giftcardIndicator=false&amp;amp;posAmountGratuityValue=0&amp;amp;pspReference=TF995R5G6L2GWR82&amp;amp;store=YOUR_STOREL&amp;amp;iso8601TxDate=2022-02-03T15%3a04%3a13.0000000%2b0000&amp;amp;posOriginalAmountValue=1025&amp;amp;txtime=16%3a04%3a13&amp;amp;paymentMethod=mc&amp;amp;txdate=03-02-2022&amp;amp;merchantReference=2022-02-03%2016%3a04%3a13&amp;amp;posadditionalamounts.originalAmountCurrency=EUR&amp;amp;transactionReferenceNumber=TF995R5G6L2GWR82&amp;amp;posAuthAmountCurrency=EUR&amp;amp;posAmountCashbackValue=0&amp;amp;posEntryMode=CLESS_CHIP&amp;amp;posAuthAmountValue=600\\\\\\&quot;,\\\\n            \\\\\\&quot;Result\\\\\\&quot;:\\\\\\&quot;Success\\\\\\&quot;\\\\n         },\\\\n         \\\\\\&quot;ReversedAmount\\\\\\&quot;:6\\\\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;If your request failed, the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/terminal-api\\\/latest\\\/post\\\/reversal\\\/#responses-200-Response\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;ReversalResponse.Response&lt;\\\/a&gt; contains:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;Result&lt;\\\/code&gt;: &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;Failure&lt;\\\/strong&gt;&lt;\\\/span&gt;&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;AdditionalResponse&lt;\\\/code&gt;: This includes a &lt;code&gt;message&lt;\\\/code&gt; explaining why the request failed. For example:\\n&lt;ul&gt;\\n&lt;li&gt;&lt;em&gt;Original pspReference required for this operation&lt;\\\/em&gt;: Messages like this tell you how to fix the request so you can try again.&lt;\\\/li&gt;\\n&lt;li&gt;&lt;em&gt;Transaction is already voided&lt;\\\/em&gt;: This message tells you that we already received a full reversal request for the original transaction. &lt;\\\/li&gt;\\n&lt;\\\/ul&gt;&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;!-- list separator --&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Wait for the  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/Webhooks\\\/latest\\\/post\\\/CANCEL_OR_REFUND\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;CANCEL_OR_REFUND&lt;\\\/a&gt; webhook event to learn the outcome of the refund request. Refunds are always processed asynchronously.&lt;\\\/p&gt;\\n&quot;,&quot;altTitle&quot;:&quot;partial&quot;,&quot;oldTabId&quot;:&quot;partial_refund_1_2&quot;,&quot;relation&quot;:&quot;partial&quot;}]\"\n            :should-update-when-url-changes='true'>\n        <\/tabs>\n    <\/div>\n<\/div>\n\n<\/li>\n<\/ol>\n<h2 id=\"refund-offline-payment\">Refund an offline payment when back online<\/h2>\n<p>When there is a temporary loss of internet connectivity, you can continue making point-of-sale payments. This is referred to as <a href=\"\/pt\/point-of-sale\/offline-payment\">offline payments<\/a>. The response for an offline payment does not include a PSP reference because PSP references are generated on the plataforma de pagamentos da Adyen, and that could not be reached due to the loss of internet connectivity.<\/p>\n<p>If you need to refund such a payment when your integration is back online, you need to accommodate the fact that the PSP reference is missing from the offline payment response.<\/p>\n<p>There are two options:<\/p>\n<ul>\n<li>\n<p><strong>Use the PSP reference from the webhook<\/strong>.<br \/>\nFind the PSP reference of the offline payment in the standard webhook that you received (or in your Customer Area). You can then make a <a href=\"#referenced-request\">regular referenced refund<\/a> using the PSP reference. <\/p>\n<\/li>\n<li>\n<p><strong>Use the tender reference from the offline payment response<\/strong>.<br \/>\nPayment terminals generate a tender reference for each payment. To make a referenced refund of an offline payment, you provide the tender reference and the date of the offline payment. In most cases you also need to know the unique identifier of the terminal that processed the payment. See the tabs below for details.<\/p>\n<\/li>\n<\/ul>\n<p>If you make a referenced refund using the tender reference before the offline payment has been processed, the request is queued and retried by the Adyen platform. The payment status then changes from <code>Authorised<\/code> to <code>Cancelled<\/code>, because no funds have been transferred yet. If the payment status is <code>Sent for Settle<\/code> before the referenced refund is made, the payment status changes to <code>Refunded<\/code>.<\/p>\n\n<div id=\"tab72nI9\">\n    <div data-component-wrapper=\"tabs\">\n        <tabs\n                        :items=\"[{&quot;title&quot;:&quot;Full refund using tender reference&quot;,&quot;content&quot;:&quot;\\n&lt;p&gt;Compared to a &lt;a href=\\&quot;\\\/pt\\\/point-of-sale\\\/basic-tapi-integration\\\/refund-payment\\\/referenced?tab=full_refund_1\\&quot;&gt;basic full referenced refund&lt;\\\/a&gt;, note the following request parameters:&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;Parameter&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&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;code&gt;OriginalPOITransaction.POITransactionID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;An object with &lt;code&gt;TransactionID&lt;\\\/code&gt;: the tender reference of the original payment. For example, &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;BV0q001643892070000&lt;\\\/strong&gt;&lt;\\\/span&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;OriginalPOITransaction.POIID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Can be either: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;a href=\\&quot;\\\/pt\\\/point-of-sale\\\/design-your-integration\\\/terminal-api#get-the-terminal-id\\&quot;&gt;the unique ID of the terminal&lt;\\\/a&gt; (for example &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;P400Plus-275008565&lt;\\\/strong&gt;&lt;\\\/span&gt;),&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;the &lt;a href=\\&quot;\\\/pt\\\/point-of-sale\\\/mobile-ios\\\/build\\\/card-reader#add-the-card-reader-id-to-the-payment-request\\&quot;&gt;card reader ID&lt;\\\/a&gt; (for example &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;NYC1-0207111104&lt;\\\/strong&gt;&lt;\\\/span&gt;)  for an NYC1 transaction,&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;the unique  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/possdk\\\/latest\\\/post\\\/sessions#responses-201-installationId\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;installationId&lt;\\\/a&gt; of the mobile SDK( for example &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;AC2ABBE8-EDD8-4E2B-AF45-8770FA2347DC.924&lt;\\\/strong&gt;&lt;\\\/span&gt;) for a Tap To Pay transaction&lt;\\\/li&gt;&lt;\\\/ul&gt; that processed the original payment. With the POIID, we can find the missing information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-json\\&quot;&gt;{\\n   \\&quot;SaleToPOIRequest\\&quot;:{\\n      \\&quot;MessageHeader\\&quot;:{\\n         \\&quot;ProtocolVersion\\&quot;:\\&quot;3.0\\&quot;,\\n         \\&quot;MessageClass\\&quot;:\\&quot;Service\\&quot;,\\n         \\&quot;MessageCategory\\&quot;:\\&quot;Reversal\\&quot;,\\n         \\&quot;MessageType\\&quot;:\\&quot;Request\\&quot;,\\n         \\&quot;SaleID\\&quot;:\\&quot;POSSystemID12345\\&quot;,\\n         \\&quot;ServiceID\\&quot;:\\&quot;207111108\\&quot;,\\n         \\&quot;POIID\\&quot;:\\&quot;V400m-324688179\\&quot;\\n      },\\n      \\&quot;ReversalRequest\\&quot;:{\\n         \\&quot;OriginalPOITransaction\\&quot;:{\\n            \\&quot;POITransactionID\\&quot;:{\\n               \\&quot;TransactionID\\&quot;:\\&quot;BV0q001643892070000\\&quot;,\\n               \\&quot;TimeStamp\\&quot;:\\&quot;2022-01-31T12:08:45.004Z\\&quot;\\n            },\\n            \\&quot;POIID\\&quot;:\\&quot;P400Plus-275008565\\&quot;\\n         },\\n         \\&quot;ReversalReason\\&quot;:\\&quot;MerchantCancel\\&quot;\\n      }\\n   }\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&quot;,&quot;altTitle&quot;:&quot;full&quot;,&quot;oldTabId&quot;:&quot;full_refund_using_tender_reference_0_1&quot;,&quot;relation&quot;:&quot;full&quot;},{&quot;title&quot;:&quot;Partial refund using tender reference&quot;,&quot;content&quot;:&quot;\\n&lt;p&gt;Compared to a &lt;a href=\\&quot;\\\/pt\\\/point-of-sale\\\/basic-tapi-integration\\\/refund-payment\\\/referenced?tab=partial_refund_2\\&quot;&gt;basic partial referenced refund&lt;\\\/a&gt;, note the following request parameters:&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;Parameter&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&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;code&gt;OriginalPOITransaction.POITransactionID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;An object with &lt;code&gt;TransactionID&lt;\\\/code&gt;: the tender reference of the original payment. For example, &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;BV0q001643892070000&lt;\\\/strong&gt;&lt;\\\/span&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;OriginalPOITransaction.POIID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;Can be either: &lt;ul&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;&lt;a href=\\&quot;\\\/pt\\\/point-of-sale\\\/design-your-integration\\\/terminal-api#get-the-terminal-id\\&quot;&gt;the unique ID of the terminal&lt;\\\/a&gt; (for example &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;P400Plus-275008565&lt;\\\/strong&gt;&lt;\\\/span&gt;),&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;the &lt;a href=\\&quot;\\\/pt\\\/point-of-sale\\\/mobile-ios\\\/build\\\/card-reader#add-the-card-reader-id-to-the-payment-request\\&quot;&gt;card reader ID&lt;\\\/a&gt; (for example &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;NYC1-0207111104&lt;\\\/strong&gt;&lt;\\\/span&gt;)  for an NYC1 transaction,&lt;\\\/li&gt;&lt;li markdown=\\&quot;1\\&quot;&gt;the unique  &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/possdk\\\/latest\\\/post\\\/sessions#responses-201-installationId\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;installationId&lt;\\\/a&gt; of the mobile SDK( for example &lt;span translate=\\&quot;no\\&quot;&gt;&lt;strong&gt;AC2ABBE8-EDD8-4E2B-AF45-8770FA2347DC.924&lt;\\\/strong&gt;&lt;\\\/span&gt;) for a Tap To Pay transaction&lt;\\\/li&gt;&lt;\\\/ul&gt; that processed the original payment. With the POIID, we can find the missing information.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;\\\/tbody&gt;\\n&lt;\\\/table&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-json\\&quot;&gt;{\\n   \\&quot;SaleToPOIRequest\\&quot;:{\\n      \\&quot;MessageHeader\\&quot;:{\\n         \\&quot;ProtocolVersion\\&quot;:\\&quot;3.0\\&quot;,\\n         \\&quot;MessageClass\\&quot;:\\&quot;Service\\&quot;,\\n         \\&quot;MessageCategory\\&quot;:\\&quot;Reversal\\&quot;,\\n         \\&quot;MessageType\\&quot;:\\&quot;Request\\&quot;,\\n         \\&quot;SaleID\\&quot;:\\&quot;POSSystemID12345\\&quot;,\\n         \\&quot;ServiceID\\&quot;:\\&quot;207111108\\&quot;,\\n         \\&quot;POIID\\&quot;:\\&quot;V400m-324688179\\&quot;\\n      },\\n      \\&quot;ReversalRequest\\&quot;:{\\n         \\&quot;OriginalPOITransaction\\&quot;:{\\n            \\&quot;POITransactionID\\&quot;:{\\n               \\&quot;TransactionID\\&quot;:\\&quot;BV0q001643892070000\\&quot;,\\n               \\&quot;TimeStamp\\&quot;:\\&quot;2022-01-31T12:08:45.004Z\\&quot;\\n            },\\n            \\&quot;POIID\\&quot;:\\&quot;P400Plus-275008565\\&quot;\\n         },\\n         \\&quot;ReversalReason\\&quot;:\\&quot;MerchantCancel\\&quot;,\\n         \\&quot;ReversedAmount\\&quot;:6,\\n         \\&quot;SaleData\\&quot;:{\\n            \\&quot;SaleToAcquirerData\\&quot;:\\&quot;currency=EUR\\&quot;,\\n            \\&quot;SaleTransactionID\\&quot;:{\\n               \\&quot;TimeStamp\\&quot;:\\&quot;2022-02-03T15:04:14.004Z\\&quot;,\\n               \\&quot;TransactionID\\&quot;:\\&quot;27911\\&quot;\\n            }\\n         }\\n      }\\n   }\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&quot;,&quot;altTitle&quot;:&quot;partial&quot;,&quot;oldTabId&quot;:&quot;partial_refund_using_tender_reference_1_2&quot;,&quot;relation&quot;:&quot;partial&quot;}]\"\n            :should-update-when-url-changes='true'>\n        <\/tabs>\n    <\/div>\n<\/div>\n\n<h2 id=\"refund-ecommerce-payment\">Refund an ecommerce payment<\/h2>\n<p>An ecommerce payment does have a PSP reference, but the tender reference is missing because it is generated by the terminal. To refund an ecommerce payment, you need to know the PSP reference, the date, and the currency of the original payment.<\/p>\n\n<div id=\"tabi4gYA\">\n    <div data-component-wrapper=\"tabs\">\n        <tabs\n                        :items=\"[{&quot;title&quot;:&quot;Full refund of an ecommerce transaction&quot;,&quot;content&quot;:&quot;\\n&lt;p&gt;Compared to a &lt;a href=\\&quot;\\\/pt\\\/point-of-sale\\\/basic-tapi-integration\\\/refund-payment\\\/referenced?tab=full_refund_1\\&quot;&gt;basic full referenced refund&lt;\\\/a&gt;, note the following request parameters:&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;Parameter&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&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;code&gt;OriginalPOITransaction.POITransactionID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;An object with &lt;code&gt;TransactionID&lt;\\\/code&gt;: the PSP reference of the original payment, in the format &lt;code&gt;.pspReference&lt;\\\/code&gt;. For example: &lt;strong&gt;.VK9DRSLLRCQ2WN82&lt;\\\/strong&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; Do not forget the leading dot (.). Without it, you will receive the error message &lt;code&gt;unreachable host&lt;\\\/code&gt;.&lt;\\\/div&gt;&lt;\\\/div&gt;&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;SaleData.SaleToAcquirerData&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;The currency of the refund, in the format &lt;code&gt;currency=ABC&lt;\\\/code&gt; where &lt;code&gt;ABC&lt;\\\/code&gt; is the three-letter &lt;a href=\\&quot;\\\/pt\\\/development-resources\\\/currency-codes\\&quot;&gt;currency code&lt;\\\/a&gt;. This must match the currency of the original payment.&lt;\\\/td&gt;\\n&lt;\\\/tr&gt;\\n&lt;tr&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;&lt;code&gt;SaleData.SaleTransactionID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;An object with: &lt;ul&gt;&lt;li&gt;&lt;code&gt;TransactionID&lt;\\\/code&gt;: your reference for the refund. In your Customer Area and Adyen reports, this will show as the &lt;strong&gt;merchant reference&lt;\\\/strong&gt;.&lt;\\\/li&gt; &lt;li&gt;&lt;code&gt;TimeStamp&lt;\\\/code&gt;: date and time in &lt;a href=\\&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/ISO_8601#Coordinated_Universal_Time_(UTC)\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot; class=\\&quot;external-link no-image\\&quot;&gt;UTC format&lt;\\\/a&gt; of the refund.&lt;\\\/li&gt;&lt;\\\/ul&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-json\\&quot;&gt;{\\n   \\&quot;SaleToPOIRequest\\&quot;:{\\n      \\&quot;MessageHeader\\&quot;:{\\n         \\&quot;ProtocolVersion\\&quot;:\\&quot;3.0\\&quot;,\\n         \\&quot;MessageClass\\&quot;:\\&quot;Service\\&quot;,\\n         \\&quot;MessageCategory\\&quot;:\\&quot;Reversal\\&quot;,\\n         \\&quot;MessageType\\&quot;:\\&quot;Request\\&quot;,\\n         \\&quot;SaleID\\&quot;:\\&quot;POSSystemID12345\\&quot;,\\n         \\&quot;ServiceID\\&quot;:\\&quot;207111108\\&quot;,\\n         \\&quot;POIID\\&quot;:\\&quot;V400m-324688179\\&quot;\\n      },\\n      \\&quot;ReversalRequest\\&quot;:{\\n         \\&quot;OriginalPOITransaction\\&quot;:{\\n            \\&quot;POITransactionID\\&quot;:{\\n               \\&quot;TransactionID\\&quot;:\\&quot;.VK9DRSLLRCQ2WN82\\&quot;,\\n               \\&quot;TimeStamp\\&quot;:\\&quot;2022-01-31T12:08:45.004Z\\&quot;\\n            }\\n         },\\n         \\&quot;ReversalReason\\&quot;:\\&quot;MerchantCancel\\&quot;,\\n         \\&quot;SaleData\\&quot;:{\\n            \\&quot;SaleToAcquirerData\\&quot;:\\&quot;currency=EUR\\&quot;,\\n            \\&quot;SaleTransactionID\\&quot;:{\\n               \\&quot;TimeStamp\\&quot;:\\&quot;2022-02-03T15:04:14.004Z\\&quot;,\\n               \\&quot;TransactionID\\&quot;:\\&quot;rev-708\\&quot;\\n            }\\n         }\\n      }\\n   }\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;p&gt;When you receive the &lt;code&gt;ReversalResponse&lt;\\\/code&gt;, note that the &lt;code&gt;Response.AdditionalResponse&lt;\\\/code&gt; includes:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;posOriginalAmountValue&lt;\\\/code&gt;: &lt;strong&gt;0&lt;\\\/strong&gt; (zero)&lt;\\\/li&gt;\\n&lt;li&gt;&lt;code&gt;posAuthAmountValue&lt;\\\/code&gt;: &lt;strong&gt;0&lt;\\\/strong&gt; (zero)&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;That is because at this moment we do not know the original amount of the ecommerce payment, and thus also do not know the refund amount that we will try to get authorized.&lt;\\\/p&gt;\\n&quot;,&quot;altTitle&quot;:null,&quot;oldTabId&quot;:&quot;full_refund_of_an_ecommerce_transaction_0_1&quot;,&quot;relation&quot;:&quot;&quot;},{&quot;title&quot;:&quot;Partial refund of an ecommerce transaction&quot;,&quot;content&quot;:&quot;\\n&lt;p&gt;Compared to a &lt;a href=\\&quot;\\\/pt\\\/point-of-sale\\\/basic-tapi-integration\\\/refund-payment\\\/referenced?tab=partial_refund_2\\&quot;&gt;basic partial referenced refund&lt;\\\/a&gt;, note the following request parameters:&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;Parameter&lt;\\\/th&gt;\\n&lt;th style=\\&quot;text-align: center;\\&quot;&gt;Required&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;code&gt;OriginalPOITransaction.POITransactionID&lt;\\\/code&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: center;\\&quot;&gt;&lt;img title=\\&quot;-white_check_mark-\\&quot; alt=\\&quot;-white_check_mark-\\&quot; class=\\&quot;smileys\\&quot; src=\\&quot;\\\/user\\\/data\\\/smileys\\\/emoji\\\/white_check_mark.png\\&quot; \\\/&gt;&lt;\\\/td&gt;\\n&lt;td style=\\&quot;text-align: left;\\&quot;&gt;An object with &lt;code&gt;TransactionID&lt;\\\/code&gt;: the PSP reference of the original payment, in the format &lt;code&gt;.pspReference&lt;\\\/code&gt;. For example: &lt;strong&gt;.VK9DRSLLRCQ2WN82&lt;\\\/strong&gt; &lt;div class=\\&quot;sc-notice note\\&quot;&gt;&lt;div&gt; Do not forget the leading dot (.). Without it, you will receive the error message &lt;code&gt;unreachable host&lt;\\\/code&gt;.&lt;\\\/div&gt;&lt;\\\/div&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-json\\&quot;&gt;{\\n   \\&quot;SaleToPOIRequest\\&quot;:{\\n      \\&quot;MessageHeader\\&quot;:{\\n         \\&quot;ProtocolVersion\\&quot;:\\&quot;3.0\\&quot;,\\n         \\&quot;MessageClass\\&quot;:\\&quot;Service\\&quot;,\\n         \\&quot;MessageCategory\\&quot;:\\&quot;Reversal\\&quot;,\\n         \\&quot;MessageType\\&quot;:\\&quot;Request\\&quot;,\\n         \\&quot;SaleID\\&quot;:\\&quot;POSSystemID12345\\&quot;,\\n         \\&quot;ServiceID\\&quot;:\\&quot;207111108\\&quot;,\\n         \\&quot;POIID\\&quot;:\\&quot;V400m-324688179\\&quot;\\n      },\\n      \\&quot;ReversalRequest\\&quot;:{\\n         \\&quot;OriginalPOITransaction\\&quot;:{\\n            \\&quot;POITransactionID\\&quot;:{\\n               \\&quot;TransactionID\\&quot;:\\&quot;.VK9DRSLLRCQ2WN82\\&quot;,\\n               \\&quot;TimeStamp\\&quot;:\\&quot;2022-01-31T12:08:45.004Z\\&quot;\\n            }\\n         },\\n         \\&quot;ReversalReason\\&quot;:\\&quot;MerchantCancel\\&quot;,\\n         \\&quot;ReversedAmount\\&quot;:6,\\n         \\&quot;SaleData\\&quot;:{\\n            \\&quot;SaleToAcquirerData\\&quot;:\\&quot;currency=EUR\\&quot;,\\n            \\&quot;SaleTransactionID\\&quot;:{\\n               \\&quot;TimeStamp\\&quot;:\\&quot;2022-02-03T15:04:14.004Z\\&quot;,\\n               \\&quot;TransactionID\\&quot;:\\&quot;rev-708\\&quot;\\n            }\\n         }\\n      }\\n   }\\n}&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;p&gt;When you receive the &lt;code&gt;ReversalResponse&lt;\\\/code&gt;, note that the &lt;code&gt;Response.AdditionalResponse&lt;\\\/code&gt; includes:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt;&lt;code&gt;posOriginalAmountValue&lt;\\\/code&gt;: &lt;strong&gt;0&lt;\\\/strong&gt; (zero)&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;p&gt;That is because at this moment we do not know the original amount of the ecommerce payment.&lt;\\\/p&gt;\\n&quot;,&quot;altTitle&quot;:null,&quot;oldTabId&quot;:&quot;partial_refund_of_an_ecommerce_transaction_1_2&quot;,&quot;relation&quot;:&quot;&quot;}]\"\n            :should-update-when-url-changes='false'>\n        <\/tabs>\n    <\/div>\n<\/div>\n\n<h2>See also<\/h2>\n<div class=\"see-also-links output-inline\" id=\"see-also\">\n<ul><li><a href=\"\/point-of-sale\/basic-tapi-integration\/refund-payment\/refund-webhooks\"\n                        target=\"_self\"\n                        >\n                    Outcome of a refund\n                <\/a><\/li><li><a href=\"\/point-of-sale\/offline-payment#making-refunds-while-offline\"\n                        target=\"_self\"\n                        >\n                    Making refunds while offline\n                <\/a><\/li><li><a href=\"https:\/\/help.adyen.com\/knowledge\/payments\/refunds\/\"\n                        target=\"_blank\"\n                         class=\"external\">\n                    FAQs: Refunds\n                <\/a><\/li><\/ul><\/div>\n","url":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/basic-tapi-integration\/refund-payment\/referenced","articleFields":{"description":"Issue a point-of-sale refund connected to the original payment.","feedback_component":true,"type":"page","_expandable":{"operations":""},"status":"current","filters_component":false,"decision_tree":"[]","page_id":"982dae17-ae4f-4863-9456-97023a17e372","last_edit_on":"22-01-2025 13:28"},"algolia":{"url":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/basic-tapi-integration\/refund-payment\/referenced","title":"Referenced refund","content":"To return funds to a shopper after a payment is approved, you need to refund the payment. Referenced refunds are connected to the original payment, using the unique identifier of that payment.\nWhen you make a POS payment, the Terminal API response returns the transaction identifier of the payment in the format tenderReference.pspReference. To make a referenced refund, you specify this transaction identifier in your refund request. This lets us validate the refund against the original payment, to ensure that it hasn't already been refunded.\nYou can make a:\n\nFull refund to return the total value of the purchase to the shopper.\nPartial refund to return part of the purchase to the shopper. For example, when a shopper returns one of the items they purchased. You can also make multiple partial refunds. For example, when a shopper returns several items at different times.\n\nRequirements\n\n\n\nRequirement\nDescription\n\n\n\n\nIntegration type\nA Terminal API integration with payment terminals or with a Mobile solution.\n\n\nWebhooks\nSubscribe to the following webhook: CANCEL_OR_REFUND webhook\n\n\nLimitations\nTake into account the following limitations for refunding an offline payment when back online in a Mobile solution: This type of refund is only supported in a iOS Mobile solution.Store and Forward offline payments for Tap to Pay on iPhone is currently only supported in the US.\n\n\nSetup steps\nOptionally, set up offline payments to be able to refund an offline payment when back online.\n\n\n\nMake a referenced refund\nSelect a tab to see the parameters that you need to specify for a full referenced refund, or a partial referenced refund.\n\n\n    \n        \n        \n    \n\n\n\n\nRefund an offline payment when back online\nWhen there is a temporary loss of internet connectivity, you can continue making point-of-sale payments. This is referred to as offline payments. The response for an offline payment does not include a PSP reference because PSP references are generated on the plataforma de pagamentos da Adyen, and that could not be reached due to the loss of internet connectivity.\nIf you need to refund such a payment when your integration is back online, you need to accommodate the fact that the PSP reference is missing from the offline payment response.\nThere are two options:\n\n\nUse the PSP reference from the webhook.\nFind the PSP reference of the offline payment in the standard webhook that you received (or in your Customer Area). You can then make a regular referenced refund using the PSP reference. \n\n\nUse the tender reference from the offline payment response.\nPayment terminals generate a tender reference for each payment. To make a referenced refund of an offline payment, you provide the tender reference and the date of the offline payment. In most cases you also need to know the unique identifier of the terminal that processed the payment. See the tabs below for details.\n\n\nIf you make a referenced refund using the tender reference before the offline payment has been processed, the request is queued and retried by the Adyen platform. The payment status then changes from Authorised to Cancelled, because no funds have been transferred yet. If the payment status is Sent for Settle before the referenced refund is made, the payment status changes to Refunded.\n\n\n    \n        \n        \n    \n\n\nRefund an ecommerce payment\nAn ecommerce payment does have a PSP reference, but the tender reference is missing because it is generated by the terminal. To refund an ecommerce payment, you need to know the PSP reference, the date, and the currency of the original payment.\n\n\n    \n        \n        \n    \n\n\nSee also\n\n\n                    Outcome of a refund\n                \n                    Making refunds while offline\n                \n                    FAQs: Refunds\n                \n","type":"page","locale":"pt","boost":16,"hierarchy":{"lvl0":"Home","lvl1":"Terminais","lvl2":"Implement the payment flow","lvl3":"Reembolsar um pagamento","lvl4":"Referenced refund"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/pt","lvl1":"https:\/\/docs.adyen.com\/pt\/point-of-sale","lvl2":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/basic-tapi-integration","lvl3":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/basic-tapi-integration\/refund-payment","lvl4":"\/pt\/point-of-sale\/basic-tapi-integration\/refund-payment\/referenced"},"levels":5,"category":"In-person payments","category_color":"green","tags":["Referenced","refund"]},"articleFiles":{"WaitingScreen.png":"<img alt=\"\" src=\"https:\/\/docs.adyen.com\/user\/pages\/docs\/03.point-of-sale\/05.basic-tapi-integration\/05.refund-payment\/01.referenced\/WaitingScreen.png\" \/>","full-sample_0.json":"<p alt=\"\">full-sample_0.json<\/p>","partial-sample_1.json":"<p alt=\"\">partial-sample_1.json<\/p>"}}
