{"title":"Refund a balance to a card","category":"default","creationDate":1776961627,"content":"<p>Initiate a refund transaction in the <a href=\"\/pt\/point-of-sale\/classic-library-deprecation\/classic-library-integrations\/c-library-integration\/key-steps-c-library\/process-a-basic-transaction-c-library\/create-the-tender-c-library\">same way as a sale transaction<\/a>, specifying the <code>transaction_type<\/code>\u00a0as <span translate=\"no\"><strong>REFUND<\/strong><\/span> instead of <span translate=\"no\"><strong>GOODS_SERVICES<\/strong><\/span>.<\/p>\n<p>For all refund types, the system performs an additional check to make sure funds are available in the merchant account. Take care when interpreting the <code>FINAL_RESULT_APPROVED<\/code> tender state. \u00a0The system received the request and accepted it for processing, but has not completed the refund.<\/p>\n<p>The system does not process refunds online in real-time, as many acquirer\/issuers process these in offline batches when the final result may not be known. Basic checks can be performed when submitting a refund, but the issuer is not guaranteed to accept the refund.\u00a0<\/p>\n<p>Configure <a href=\"\/pt\/account-management-api\/manage-notifications\">notifications<\/a>\u00a0to report the result of a transaction as soon as the issuer responds. By processing these notifications, you can reconcile refunds and take action if a refund failed, by repeating the refund request or by reimbursing the shopper in another way.\u00a0<\/p>\n<p>If an internet connection is not available, the terminal queues and submits the refund when the internet is restored.<\/p>\n<h2 id=\"dynamic-currency-conversion\">Dynamic Currency Conversion<\/h2>\n<p>Refund DCC transactions in the currency paid by the shopper, regardless of exchange rate changes during the time since the original transaction. This is required by scheme regulations.<\/p>\n<p>For example, a Dutch merchant (currency EUR) sells an item of EUR&nbsp;10.00 to a US citizen, who selected DCC and paid USD&nbsp;12.00, exchange rate being 1.2000; After some time, the refund is granted, but the exchange rate is now 1.3000. The refund needs to be done for USD&nbsp;12.00, which amounts to EUR&nbsp;9.23. In this\u00a0case,\u00a0there is a loss to the merchant of EUR&nbsp;0.77. This could also result in a profit for the merchant, if the exchange rate is lower.<\/p>\n<h2 id=\"security\">Security<\/h2>\n<p>Refunds are restricted by permissions that can be set for the merchant in the plataforma de pagamentos da Adyen and on the PED and are disabled by default.<\/p>\n<p>Build specific security measures around this functionality to make sure that no fraudulent actions can be initiated by using these facilities.<\/p>\n<h2 id=\"logs\">Logs<\/h2>\n<p>The SDK package contains a <span translate=\"no\"><strong>documentation\/log_files\/documentation folder<\/strong><\/span>. This folder contains log files of actual test runs that relate to the items discussed in this manual.<\/p>\n<p>The <span translate=\"no\"><strong>refund.log<\/strong><\/span> file shows a live example of the register device call and the related callback.<\/p>","url":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/classic-library-deprecation\/classic-library-integrations\/c-library-integration\/key-steps-c-library\/cancel-or-refund-a-transaction-c-library\/refund-a-balance-to-a-card-c-library","articleFields":{"id":"24217522","type":"page","_expandable":{"operations":""},"status":"current"},"algolia":{"url":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/classic-library-deprecation\/classic-library-integrations\/c-library-integration\/key-steps-c-library\/cancel-or-refund-a-transaction-c-library\/refund-a-balance-to-a-card-c-library","title":"Refund a balance to a card","content":"Initiate a refund transaction in the same way as a sale transaction, specifying the transaction_type\u00a0as REFUND instead of GOODS_SERVICES.\nFor all refund types, the system performs an additional check to make sure funds are available in the merchant account. Take care when interpreting the FINAL_RESULT_APPROVED tender state. \u00a0The system received the request and accepted it for processing, but has not completed the refund.\nThe system does not process refunds online in real-time, as many acquirer\/issuers process these in offline batches when the final result may not be known. Basic checks can be performed when submitting a refund, but the issuer is not guaranteed to accept the refund.\u00a0\nConfigure notifications\u00a0to report the result of a transaction as soon as the issuer responds. By processing these notifications, you can reconcile refunds and take action if a refund failed, by repeating the refund request or by reimbursing the shopper in another way.\u00a0\nIf an internet connection is not available, the terminal queues and submits the refund when the internet is restored.\nDynamic Currency Conversion\nRefund DCC transactions in the currency paid by the shopper, regardless of exchange rate changes during the time since the original transaction. This is required by scheme regulations.\nFor example, a Dutch merchant (currency EUR) sells an item of EUR&nbsp;10.00 to a US citizen, who selected DCC and paid USD&nbsp;12.00, exchange rate being 1.2000; After some time, the refund is granted, but the exchange rate is now 1.3000. The refund needs to be done for USD&nbsp;12.00, which amounts to EUR&nbsp;9.23. In this\u00a0case,\u00a0there is a loss to the merchant of EUR&nbsp;0.77. This could also result in a profit for the merchant, if the exchange rate is lower.\nSecurity\nRefunds are restricted by permissions that can be set for the merchant in the plataforma de pagamentos da Adyen and on the PED and are disabled by default.\nBuild specific security measures around this functionality to make sure that no fraudulent actions can be initiated by using these facilities.\nLogs\nThe SDK package contains a documentation\/log_files\/documentation folder. This folder contains log files of actual test runs that relate to the items discussed in this manual.\nThe refund.log file shows a live example of the register device call and the related callback.","type":"page","locale":"pt","boost":13,"hierarchy":{"lvl0":"Home","lvl1":"Terminais","lvl2":"Deprecation of classic libraries","lvl3":"Library integrations","lvl4":"C library integration","lvl5":"Key steps","lvl6":"Cancel or refund a transaction","lvl7":"Refund a balance to a card"},"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\/classic-library-deprecation","lvl3":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/classic-library-deprecation\/classic-library-integrations","lvl4":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/classic-library-deprecation\/classic-library-integrations\/c-library-integration","lvl5":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/classic-library-deprecation\/classic-library-integrations\/c-library-integration\/key-steps-c-library","lvl6":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/classic-library-deprecation\/classic-library-integrations\/c-library-integration\/key-steps-c-library\/cancel-or-refund-a-transaction-c-library","lvl7":"\/pt\/point-of-sale\/classic-library-deprecation\/classic-library-integrations\/c-library-integration\/key-steps-c-library\/cancel-or-refund-a-transaction-c-library\/refund-a-balance-to-a-card-c-library"},"levels":8,"category":"In-person payments","category_color":"green","tags":["Refund","balance"]}}
