{"title":"Pass application information","category":"default","creationDate":1779706500,"content":"<p>Application information identifies the software that you use for making payment requests to the Adyen payments platform. Add application info to your payment requests so that we can analyze and troubleshoot payments more efficiently and provide better support.<\/p>\n<h2>Requirements<\/h2>\n<p>If you have built a <a href=\"\/point-of-sale\/get-started\">Terminal API integration<\/a>, there are no additional requirements, limitations, or preparations.<\/p>\n<h2>Application information fields<\/h2>\n<p>Include these fields in the <code>applicationInfo<\/code> object:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Field<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<th>Required<\/th>\n<th style=\"text-align: left;\">Example<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><code>externalPlatform.name<\/code><\/td>\n<td style=\"text-align: left;\">Your company name or the name of your platform.<\/td>\n<td><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>Best Store Commerce<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>externalPlatform.version<\/code><\/td>\n<td style=\"text-align: left;\">The software version of the platform.<\/td>\n<td>If your platform has versions.<\/td>\n<td style=\"text-align: left;\"><strong>1.3<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>externalPlatform.integrator<\/code><\/td>\n<td style=\"text-align: left;\">Your company name if you built the POS application, or the name of the service partner that built your integration.<\/td>\n<td><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>AAA Systems<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>merchantApplication.name<\/code><\/td>\n<td style=\"text-align: left;\">The name of the POS application or product being used.<\/td>\n<td><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>Best Instore<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>merchantApplication.version<\/code><\/td>\n<td style=\"text-align: left;\">The software version of the application.<\/td>\n<td>If your application has versions.<\/td>\n<td style=\"text-align: left;\"><strong>2.13.05<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>merchantDevice.os<\/code><\/td>\n<td style=\"text-align: left;\">The operating system of the device that runs the POS application.<\/td>\n<td><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>iOS<\/strong><\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>merchantDevice.osVersion<\/code><\/td>\n<td style=\"text-align: left;\">The software version of the operating system.<\/td>\n<td><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>16.3<\/strong><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Field value requirements<\/h3>\n<p>The values you send in the application info fields can:<\/p>\n<ul>\n<li>Be between up to 40 characters in length.<\/li>\n<li>Start with a number or letter.<\/li>\n<li>Contain letters, digits, dashes, underscores, and spaces.<\/li>\n<\/ul>\n<div class=\"sc-notice note\"><div>\n<p>The formatting of the values must be the same in every request. <br> For example, if the <code>externalPlatform.name<\/code> value is <strong>adVantage_Commerce_Suite<\/strong>, you cannot sometimes use a different value like <strong>adVantage_CommerceSuite<\/strong> or <strong>ADVANTAGECOMMERCESUITE<\/strong>. You must choose one format and use it for every request.<\/p>\n<\/div><\/div>\n<h2 id=\"add-application-info\">Add application info to your request<\/h2>\n<p>To add application info to your payment request, you pass data elements in the <code>SaleToAcquirerData<\/code> field. There are two ways to do that:<\/p>\n<ul>\n<li><strong>Option 1<\/strong>: as a JSON object converted to a Base64-encoded string.<\/li>\n<li><strong>Option 2<\/strong>: as form-encoded key-value pairs (using <strong>&amp;<\/strong> as a separator).<\/li>\n<\/ul>\n\n<div id=\"tabMkPbo\">\n    <div data-component-wrapper=\"tabs\">\n        <tabs\n                        :items=\"[{&quot;title&quot;:&quot;Option 1: Base64-encoded JSON&quot;,&quot;content&quot;:&quot;\\n&lt;p&gt;This example shows how to add application info to your payment request as a JSON object converted to a Base64-encoded string:&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a JSON object with the data elements you want to pass. For example:&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;JSON object&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n    \\\\\\&quot;applicationInfo\\\\\\&quot;: {\\\\n        \\\\\\&quot;externalPlatform\\\\\\&quot;: {\\\\n            \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Best Store Commerce\\\\\\&quot;,\\\\n            \\\\\\&quot;version\\\\\\&quot;: \\\\\\&quot;1.3\\\\\\&quot;,\\\\n            \\\\\\&quot;integrator\\\\\\&quot;: \\\\\\&quot;AAA Systems\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantApplication\\\\\\&quot;: {\\\\n            \\\\\\&quot;name\\\\\\&quot;: \\\\\\&quot;Best Instore\\\\\\&quot;,\\\\n            \\\\\\&quot;version\\\\\\&quot;: \\\\\\&quot;2.13.05\\\\\\&quot;\\\\n        },\\\\n        \\\\\\&quot;merchantDevice\\\\\\&quot;: {\\\\n            \\\\\\&quot;os\\\\\\&quot;: \\\\\\&quot;iOS\\\\\\&quot;,\\\\n            \\\\\\&quot;osVersion\\\\\\&quot;: \\\\\\&quot;16.3\\\\\\&quot;\\\\n        }\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Encode the JSON object to Base64.&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-raw\\&quot;&gt;ewogICAgImFwcGxpY2F0aW9uSW5mbyI6ewogICAgICAgICJleHRlcm5hbFBsYXRmb3JtIjp7CiAgICAgICAgICAgICJuYW1lIjoiQmVzdCBTdG9yZSBDb21tZXJjZSIsCiAgICAgICAgICAgICJ2ZXJzaW9uIjoiMS4zIiwKICAgICAgICAgICAgImludGVncmF0b3IiOiJBQUEgU3lzdGVtcyIKICAgICAgICB9LAogICAgICAgICJtZXJjaGFudEFwcGxpY2F0aW9uIjp7CiAgICAgICAgICAgICJuYW1lIjoiQmVzdCBJbnN0b3JlIiwKICAgICAgICAgICAgInZlcnNpb24iOiIyLjEzLjA1IgogICAgICAgIH0sCiAgICAgICAgIm1lcmNoYW50RGV2aWNlIjp7CiAgICAgICAgICAgICJvcyI6ImlPUyIsCiAgICAgICAgICAgICJvc1ZlcnNpb24iOiIxNi4zIgogICAgICAgIH0KICAgIH0KfQ==&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Make a Terminal API &lt;a href=\\&quot;\\\/point-of-sale\\\/basic-tapi-integration\\\/make-a-payment\\&quot;&gt;payment request&lt;\\\/a&gt; with:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt; &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/terminal-api\\\/latest\\\/post\\\/payment#request-SaleData-SaleToAcquirerData\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;SaleToAcquirerData&lt;\\\/a&gt;: The Base64-encoded JSON object.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;pass-app-info-base64&#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;PaymentRequest\\\\\\&quot;:{\\\\n            \\\\\\&quot;SaleData\\\\\\&quot;:{\\\\n                \\\\\\&quot;SaleToAcquirerData\\\\\\&quot;: \\\\\\&quot;ewogICAgImFwcGxpY2F0aW9uSW5mbyI6ewogICAgICAgICJleHRlcm5hbFBsYXRmb3JtIjp7CiAgICAgICAgICAgICJuYW1lIjoiQmVzdCBTdG9yZSBDb21tZXJjZSIsCiAgICAgICAgICAgICJ2ZXJzaW9uIjoiMS4zIiwKICAgICAgICAgICAgImludGVncmF0b3IiOiJBQUEgU3lzdGVtcyIKICAgICAgICB9LAogICAgICAgICJtZXJjaGFudEFwcGxpY2F0aW9uIjp7CiAgICAgICAgICAgICJuYW1lIjoiQmVzdCBJbnN0b3JlIiwKICAgICAgICAgICAgInZlcnNpb24iOiIyLjEzLjA1IgogICAgICAgIH0sCiAgICAgICAgIm1lcmNoYW50RGV2aWNlIjp7CiAgICAgICAgICAgICJvcyI6ImlPUyIsCiAgICAgICAgICAgICJvc1ZlcnNpb24iOiIxNi4zIgogICAgICAgIH0KICAgIH0KfQ==\\\\\\&quot;,\\\\n                \\\\\\&quot;SaleTransactionID\\\\\\&quot;: {\\\\n                    \\\\\\&quot;TransactionID\\\\\\&quot;: \\\\\\&quot;27909\\\\\\&quot;,\\\\n                    \\\\\\&quot;TimeStamp\\\\\\&quot;: \\\\\\&quot;2020-04-16T11:53:52+00:00\\\\\\&quot;\\\\n                }\\\\n            },\\\\n            \\\\\\&quot;PaymentTransaction\\\\\\&quot;:{\\\\n                \\\\\\&quot;AmountsReq\\\\\\&quot;:{\\\\n                    \\\\\\&quot;Currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n                    \\\\\\&quot;RequestedAmount\\\\\\&quot;:10.99\\\\n                }\\\\n            }\\\\n        },\\\\n        \\\\\\&quot;MessageHeader\\\\\\&quot;:{\\\\n            \\\\\\&quot;ProtocolVersion\\\\\\&quot;:\\\\\\&quot;3.0\\\\\\&quot;,\\\\n            \\\\\\&quot;MessageClass\\\\\\&quot;:\\\\\\&quot;Service\\\\\\&quot;,\\\\n            \\\\\\&quot;MessageCategory\\\\\\&quot;:\\\\\\&quot;Payment\\\\\\&quot;,\\\\n            \\\\\\&quot;MessageType\\\\\\&quot;:\\\\\\&quot;Request\\\\\\&quot;,\\\\n            \\\\\\&quot;ServiceID\\\\\\&quot;:\\\\\\&quot;1113162454\\\\\\&quot;,\\\\n            \\\\\\&quot;SaleID\\\\\\&quot;:\\\\\\&quot;POSSystemID12346\\\\\\&quot;,\\\\n            \\\\\\&quot;POIID\\\\\\&quot;:\\\\\\&quot;V400m-346403161\\\\\\&quot;\\\\n        }\\\\n    }\\\\n}\\&quot;},{\\&quot;language\\&quot;:\\&quot;java\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;Java\\&quot;,\\&quot;content\\&quot;:\\&quot;String POIID = \\\\\\&quot;YOUR_TERMINAL_ID\\\\\\&quot;;\\\\nString serviceID = \\\\\\&quot;YOUR_UNIQUE_ATTEMPT_ID\\\\\\&quot;;\\\\nString saleID = \\\\\\&quot;YOUR_CASH_REGISTER_ID\\\\\\&quot;;\\\\nString transactionID = \\\\\\&quot;YOUR_UNIQUE_TRANSACTION_ID\\\\\\&quot;;\\\\n\\\\nSaleToPOIRequest saleToPOIRequest = new SaleToPOIRequest();\\\\nMessageHeader messageHeader = new MessageHeader();\\\\nmessageHeader.setPOIID(POIID);\\\\nmessageHeader.setMessageClass( MessageClassType.SERVICE );\\\\nmessageHeader.setMessageType( MessageType.REQUEST );\\\\nmessageHeader.setProtocolVersion(\\\\\\&quot;3.0\\\\\\&quot;);\\\\nmessageHeader.setServiceID(serviceID);\\\\nmessageHeader.setSaleID(saleID);\\\\nmessageHeader.setMessageCategory( MessageCategoryType.PAYMENT );\\\\nsaleToPOIRequest.setMessageHeader(messageHeader);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\nPaymentTransaction paymentTransaction = new PaymentTransaction();\\\\nAmountsReq amountsReq = new AmountsReq();\\\\namountsReq.setRequestedAmount( BigDecimal.valueOf(10.99) );\\\\namountsReq.setCurrency(\\\\\\&quot;EUR\\\\\\&quot;);\\\\npaymentTransaction.setAmountsReq(amountsReq);\\\\n\\\\nTransactionConditions transactionConditions = new TransactionConditions();\\\\npaymentTransaction.setTransactionConditions(transactionConditions);\\\\npaymentRequest.setPaymentTransaction(paymentTransaction);\\\\n\\\\nSaleData saleData = new SaleData();\\\\nsaleData.setSaleToAcquirerData(\\\\\\&quot;ewogICAgImFwcGxpY2F0aW9uSW5mbyI6ewogICAgICAgICJleHRlcm5hbFBsYXRmb3JtIjp7CiAgICAgICAgICAgICJuYW1lIjoiQmVzdCBTdG9yZSBDb21tZXJjZSIsCiAgICAgICAgICAgICJ2ZXJzaW9uIjoiMS4zIiwKICAgICAgICAgICAgImludGVncmF0b3IiOiJBQUEgU3lzdGVtcyIKICAgICAgICB9LAogICAgICAgICJtZXJjaGFudEFwcGxpY2F0aW9uIjp7CiAgICAgICAgICAgICJuYW1lIjoiQmVzdCBJbnN0b3JlIiwKICAgICAgICAgICAgInZlcnNpb24iOiIyLjEzLjA1IgogICAgICAgIH0sCiAgICAgICAgIm1lcmNoYW50RGV2aWNlIjp7CiAgICAgICAgICAgICJvcyI6ImlPUyIsCiAgICAgICAgICAgICJvc1ZlcnNpb24iOiIxNi4zIgogICAgICAgIH0KICAgIH0KfQ==\\\\\\&quot;);\\\\nsaleData.setTokenRequestedType( TokenRequestedType.CUSTOMER );\\\\nTransactionIdentification saleTransactionID = new TransactionIdentification();\\\\nsaleTransactionID.setTransactionID(transactionID);\\\\nsaleTransactionID.setTimeStamp(DatatypeFactory.newInstance().newXMLGregorianCalendar(new GregorianCalendar()));\\\\nsaleData.setSaleTransactionID(saleTransactionID);\\\\npaymentRequest.setSaleData(saleData);\\\\nsaleToPOIRequest.setPaymentRequest(paymentRequest);\\\\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;Note that the payment response has the &lt;code&gt;AdditionalResponse&lt;\\\/code&gt; in the same format as the &lt;code&gt;SaleToAcquirerData&lt;\\\/code&gt;, a Base64-encoded JSON object.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Response with Base64-encoded AdditionalResponse&#039;\\&quot; :id=\\&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;PaymentResponse\\\\\\&quot;: {\\\\n            \\\\\\&quot;POIData\\\\\\&quot;: {...},\\\\n            \\\\\\&quot;SaleData\\\\\\&quot;: {...},\\\\n            \\\\\\&quot;PaymentReceipt\\\\\\&quot;: [...],\\\\n            \\\\\\&quot;PaymentResult\\\\\\&quot;: {\\\\n                \\\\\\&quot;OnlineFlag\\\\\\&quot;: true,\\\\n                \\\\\\&quot;PaymentAcquirerData\\\\\\&quot;: {...},\\\\n                \\\\\\&quot;PaymentInstrumentData\\\\\\&quot;: {\\\\n                    \\\\\\&quot;CardData\\\\\\&quot;: {...}\\\\n                    },\\\\n                    \\\\\\&quot;PaymentInstrumentType\\\\\\&quot;: \\\\\\&quot;Card\\\\\\&quot;\\\\n                },\\\\n                \\\\\\&quot;AmountsResp\\\\\\&quot;: {\\\\n                    \\\\\\&quot;AuthorizedAmount\\\\\\&quot;: 10.99,\\\\n                    \\\\\\&quot;Currency\\\\\\&quot;: \\\\\\&quot;EUR\\\\\\&quot;\\\\n                },\\\\n                \\\\\\&quot;CustomerLanguage\\\\\\&quot;: \\\\\\&quot;nl\\\\\\&quot;\\\\n            },\\\\n            \\\\\\&quot;Response\\\\\\&quot;: {\\\\n                \\\\\\&quot;Result\\\\\\&quot;: \\\\\\&quot;Success\\\\\\&quot;,\\\\n                \\\\\\&quot;AdditionalResponse\\\\\\&quot;: \\\\\\&quot;eyAidGlkIjogIjQ2NDAzMTYxIiwgIkFJRCI6ICJBMDAwMDAwMDA0MTAxMDAxIiwgInRyYW5zYWN0aW9uVHlwZSI6ICJHT09EU19TRVJWSUNFUyIsICJ0cmFuc2FjdGlvbkxhbmd1YWdlIjogIm5sIiwgImJhY2tlbmRHaWZ0Y2FyZEluZGljYXRvciI6ICJmYWxzZSIsICJwb3NhZGRpdGlvbmFsYW1vdW50cy5vcmlnaW5hbEFtb3VudFZhbHVlIjogIjEwOTkiLCAiZXhwaXJ5WWVhciI6ICIyMDI4IiwgImFjcXVpcmVyQWNjb3VudENvZGUiOiAiVGVzdFBtbUFjcXVpcmVyQWNjb3VudCIsICJhbGlhcyI6ICJNNDY5NTA5NTk0ODU5ODAyIiwgInBvc0Ftb3VudEdyYXR1aXR5VmFsdWUiOiAiMCIsICJnaWZ0Y2FyZEluZGljYXRvciI6ICJmYWxzZSIsICJhdXRob3Jpc2VkQW1vdW50VmFsdWUiOiAiMTA5OSIsICJwc3BSZWZlcmVuY2UiOiAiODUzNTg3MDMwODM0OTE3OCIsICJwYXltZW50TWV0aG9kVmFyaWFudCI6ICJtYyIsICJyZWZ1c2FsUmVhc29uUmF3IjogIkFQUFJPVkVEIiwgImF1dGhvcmlzYXRpb25NaWQiOiAiMTAwMCIsICJhcHBsaWNhdGlvblByZWZlcnJlZE5hbWUiOiAibWMgbmwiLCAiYWNxdWlyZXJDb2RlIjogIlRlc3RQbW1BY3F1aXJlciIsICJzdG9yZSI6ICJTdG9yZU9uZSIsICJ0eHRpbWUiOiAiMTE6NTM6NDkiLCAiaXNvODYwMVR4RGF0ZSI6ICIyMDIwLTA0LTE2VDA5OjUzOjQ5LjAwMDAwMDArMDAwMCIsICJjYXJkVHlwZSI6ICJtYyIsICJwb3NPcmlnaW5hbEFtb3VudFZhbHVlIjogIjEwOTkiLCAib2ZmbGluZSI6ICJmYWxzZSIsICJhbGlhc1R5cGUiOiAiRGVmYXVsdCIsICJ0eGRhdGUiOiAiMTYtMDQtMjAyMCIsICJwYXltZW50TWV0aG9kIjogIm1jIiwgImN2Y1Jlc3VsdCI6ICIwIFVua25vd24iLCAiYXV0aG9yaXNlZEFtb3VudEN1cnJlbmN5IjogIkVVUiIsICJzdGFydFllYXIiOiAiMjAxNyIsICJ0YyI6ICJFNEM3RUFEREFDMzgzNEVEIiwgImF2c1Jlc3VsdCI6ICIwIFVua25vd24iLCAiY2FyZElzc3VlTnVtYmVyIjogIjgzIiwgIm1pZCI6ICIxMDAwIiwgIm1lcmNoYW50UmVmZXJlbmNlIjogIjI3OTA5IiwgInRyYW5zYWN0aW9uUmVmZXJlbmNlTnVtYmVyIjogIjg1MzU4NzAzMDgzNDkxNzgiLCAiZXhwaXJ5TW9udGgiOiAiMDIiLCAiY2FyZFN1bW1hcnkiOiAiOTk5OSIsICJwb3NhZGRpdGlvbmFsYW1vdW50cy5vcmlnaW5hbEFtb3VudEN1cnJlbmN5IjogIkVVUiIsICJwb3NBdXRoQW1vdW50Q3VycmVuY3kiOiAiRVVSIiwgImNhcmRIb2xkZXJWZXJpZmljYXRpb25NZXRob2RSZXN1bHRzIjogIjFGMDMwMiIsICJhdXRoQ29kZSI6ICIxMjM0NTYiLCAiY2FyZElzc3VlckNvdW50cnlJZCI6ICIwNTYiLCAiYWRqdXN0QXV0aG9yaXNhdGlvbkRhdGEiOiAiQlFBQkFRQVdjckx0ZE1qSFRDam1WVzQzY3dWQitOSWN2dU54aGpKTSt1NlA3YXZiUm1ITzY4cnVzZER3eGFYRnhjMzBsQ1YwRnBlcGhlK0VSV3o3NUx1YWJaRVBXYTduYkNqVDNSS2VJTDYxa0VOb1B0VkdRUGtmSlhKOHpNTUZCWEw2cmNzNlFybU5uTjdcL2JXa3NrT0NBNUpTRFBQZ1NocVhIWHhPQ1wvWFJNRGNxNUZtUVFNNUtkZlpiOXVFMXdJOWJ4RHdWQTgxVmcrRm82Z3dKdnMwRUoxK3BzN0FTOHV5eTNpenFUY3E1aFJ5c1pyaEwydVRZNk9udlduMDNKYWdhaTB3Q2hFRmpDamF1cFBBbitPU3hGV1JxbTErQVRCc3hBd2M0Z29ISFRYaFwvYUk3XC9hbVJuMUlLdDlFaUN0bG1LRVRHYkREUXFUZG5ZclBiejdROGsrUGtkMUVPN09tRTdEQ1Y1MjN4TFVKbUs5TnpvQUFGam1yeFhrRkxnajl5V3NsZlVWOXZ3QnlHb2I1UWtHN0JWVGg1U25ONDBpWHUwN2NsRjc5MnR6MXRWMVhIM2szblgxSVkxOVMwMnJTdnlOTDhOblBCUUx2Uk9rMmc0NVFVSHhCQU0rUWxJSVJwN0VYOWhhY0ZrR3RRSnQzaXpuXC9rczB5V3F2VXA0VVcxY2twK1p5RTZoXC9pRmFSOHlMaUVobDNZU1NMNXlHSmpEOE9RMGpLN0ZWbUFcL003emx0Y3lwOFFTQmd4Y2NTUUNRY2FGNDJhZHo4bjU2OVkzdE50NXBYRVFHU1gzWUZXWFUzSE1EOVFXXC9GeFUrYmltaVFjZXZ5WklmY1JNMHNhMU5DTDJ6TyszcEQxcndXQTVCUXMwcTdzTEkxZytNQ3ZvWFRnZ2J4Vyt3T2x4VFlSVFYwSHkyc3hwQ213VDlcL000SGladHRJZndLRmZjS2xIemFpeHdiSmJcL0NVeWhsdHk0QUNINW5PK0xZNFlZVTJJTktwRTBkeGhtU1hVeGpKcUNLUGhKTU0rT0JkXC95ZUdYVEQwTUd6bUlaeURrN1J4QXlwSjlsYktQbTdKY2dPNzZJS0NUQkswcWZEd0dKdz09IiwgInBvc0Ftb3VudENhc2hiYWNrVmFsdWUiOiAiMCIsICJwb3NFbnRyeU1vZGUiOiAiQ0xFU1NfQ0hJUCIsICJzdGFydE1vbnRoIjogIjAxIiwgImZ1bmRpbmdTb3VyY2UiOiAiQ1JFRElUIiwgImlzc3VlckNvdW50cnkiOiAiQkUiLCAiY2FyZFNjaGVtZSI6ICJtYyIsICJjYXJkQmluIjogIjU0MTMzMyIsICJwb3NBdXRoQW1vdW50VmFsdWUiOiAiMTA5OSIgfQ==\\\\\\&quot;\\\\n            }\\\\n        },\\\\n        \\\\\\&quot;MessageHeader\\\\\\&quot;: {...}\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Decode the Base64 string in the &lt;code&gt;AdditionalResponse&lt;\\\/code&gt; field of the payment response.&lt;br \\\/&gt;\\nThis contains data resulting from the processing of the payment.&lt;\\\/p&gt;\\n&quot;,&quot;altTitle&quot;:null,&quot;oldTabId&quot;:1,&quot;relation&quot;:&quot;&quot;},{&quot;title&quot;:&quot;Option 2: Key-value pairs&quot;,&quot;content&quot;:&quot;\\n&lt;p&gt;This example shows how to add application info to your payment request as form-encoded key-value pairs.&lt;\\\/p&gt;\\n&lt;ol&gt;\\n&lt;li&gt;\\n&lt;p&gt;Create a string with the data elements you want to pass in key-value pairs, using &lt;strong&gt;&amp;amp;&lt;\\\/strong&gt; as a separator between the pairs.&lt;\\\/p&gt;\\n&lt;p&gt;In this example, we use these data elements:&lt;\\\/p&gt;\\n&lt;p&gt;&lt;code&gt;applicationInfo.externalPlatform.name=Best Store Commerce&lt;\\\/code&gt;&lt;br \\\/&gt;\\n&lt;code&gt;applicationInfo.externalPlatform.version=1.3&lt;\\\/code&gt;&lt;br \\\/&gt;\\n&lt;code&gt;applicationInfo.externalPlatform.integrator=AAA Systems&lt;\\\/code&gt;&lt;br \\\/&gt;\\n&lt;code&gt;applicationInfo.merchantApplication.name=Best Instore&lt;\\\/code&gt;&lt;br \\\/&gt;\\n&lt;code&gt;applicationInfo.merchantApplication.version=2.13.05&lt;\\\/code&gt;&lt;br \\\/&gt;\\n&lt;code&gt;applicationInfo.merchantDevice.os=iOS&lt;\\\/code&gt;&lt;br \\\/&gt;\\n&lt;code&gt;applicationInfo.merchantDevice.osVersion=16.3&lt;\\\/code&gt;&lt;\\\/p&gt;\\n&lt;p&gt;So the string looks like this:&lt;\\\/p&gt;\\n&lt;pre&gt;&lt;code class=\\&quot;language-raw\\&quot;&gt;applicationInfo.externalPlatform.name=Best Store Commerce&amp;amp;applicationInfo.externalPlatform.version=1.3&amp;amp;applicationInfo.externalPlatform.integrator=AAA Systems&amp;amp;applicationInfo.merchantApplication.name=Best Instore&amp;amp;applicationInfo.merchantApplication.version=2.13.05&amp;amp;applicationInfo.merchantDevice.os=iOS&amp;amp;applicationInfo.merchantDevice.osVersion=16.3&lt;\\\/code&gt;&lt;\\\/pre&gt;\\n&lt;\\\/li&gt;\\n&lt;li&gt;\\n&lt;p&gt;Make a Terminal API &lt;a href=\\&quot;\\\/point-of-sale\\\/basic-tapi-integration\\\/make-a-payment\\&quot;&gt;payment request&lt;\\\/a&gt; with:&lt;\\\/p&gt;\\n&lt;ul&gt;\\n&lt;li&gt; &lt;a href=\\&quot;https:\\\/\\\/docs.adyen.com\\\/api-explorer\\\/terminal-api\\\/latest\\\/post\\\/payment#request-SaleData-SaleToAcquirerData\\&quot; class=\\&quot;codeLabel  external-link no-image\\&quot; target=\\&quot;_blank\\&quot; rel=\\&quot;nofollow noopener noreferrer\\&quot;&gt;SaleToAcquirerData&lt;\\\/a&gt;: Your string of form-encoded key-value pairs.&lt;\\\/li&gt;\\n&lt;\\\/ul&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;&#039;\\&quot; :id=\\&quot;&#039;pass-app-info-key-value&#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;PaymentRequest\\\\\\&quot;:{\\\\n            \\\\\\&quot;SaleData\\\\\\&quot;:{\\\\n                \\\\\\&quot;SaleToAcquirerData\\\\\\&quot;: \\\\\\&quot;applicationInfo.externalPlatform.name=Best Store Commerce&amp;amp;applicationInfo.externalPlatform.version=1.3&amp;amp;applicationInfo.externalPlatform.integrator=AAA Systems&amp;amp;applicationInfo.merchantApplication.name=Best Instore&amp;amp;applicationInfo.merchantApplication.version=2.13.05&amp;amp;applicationInfo.merchantDevice.os=iOS&amp;amp;applicationInfo.merchantDevice.osVersion=16.3\\\\\\&quot;,\\\\n                \\\\\\&quot;SaleTransactionID\\\\\\&quot;: {\\\\n                    \\\\\\&quot;TransactionID\\\\\\&quot;: \\\\\\&quot;27908\\\\\\&quot;,\\\\n                    \\\\\\&quot;TimeStamp\\\\\\&quot;: \\\\\\&quot;2020-04-08T12:08:52+00:00\\\\\\&quot;\\\\n                }\\\\n            },\\\\n            \\\\\\&quot;PaymentTransaction\\\\\\&quot;:{\\\\n                \\\\\\&quot;AmountsReq\\\\\\&quot;:{\\\\n                    \\\\\\&quot;Currency\\\\\\&quot;:\\\\\\&quot;EUR\\\\\\&quot;,\\\\n                    \\\\\\&quot;RequestedAmount\\\\\\&quot;:10.99\\\\n                }\\\\n            }\\\\n        },\\\\n        \\\\\\&quot;MessageHeader\\\\\\&quot;:{\\\\n            \\\\\\&quot;ProtocolVersion\\\\\\&quot;:\\\\\\&quot;3.0\\\\\\&quot;,\\\\n            \\\\\\&quot;MessageClass\\\\\\&quot;:\\\\\\&quot;Service\\\\\\&quot;,\\\\n            \\\\\\&quot;MessageCategory\\\\\\&quot;:\\\\\\&quot;Payment\\\\\\&quot;,\\\\n            \\\\\\&quot;MessageType\\\\\\&quot;:\\\\\\&quot;Request\\\\\\&quot;,\\\\n            \\\\\\&quot;ServiceID\\\\\\&quot;:\\\\\\&quot;1113162454\\\\\\&quot;,\\\\n            \\\\\\&quot;SaleID\\\\\\&quot;:\\\\\\&quot;POSSystemID12346\\\\\\&quot;,\\\\n            \\\\\\&quot;POIID\\\\\\&quot;:\\\\\\&quot;V400m-346403161\\\\\\&quot;\\\\n        }\\\\n    }\\\\n}\\&quot;},{\\&quot;language\\&quot;:\\&quot;java\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;Java\\&quot;,\\&quot;content\\&quot;:\\&quot;String POIID = \\\\\\&quot;YOUR_TERMINAL_ID\\\\\\&quot;;\\\\nString serviceID = \\\\\\&quot;YOUR_UNIQUE_ATTEMPT_ID\\\\\\&quot;;\\\\nString saleID = \\\\\\&quot;YOUR_CASH_REGISTER_ID\\\\\\&quot;;\\\\nString transactionID = \\\\\\&quot;YOUR_UNIQUE_TRANSACTION_ID\\\\\\&quot;;\\\\n\\\\nSaleToPOIRequest saleToPOIRequest = new SaleToPOIRequest();\\\\nMessageHeader messageHeader = new MessageHeader();\\\\nmessageHeader.setPOIID(POIID);\\\\nmessageHeader.setMessageClass( MessageClassType.SERVICE );\\\\nmessageHeader.setMessageType( MessageType.REQUEST );\\\\nmessageHeader.setProtocolVersion(\\\\\\&quot;3.0\\\\\\&quot;);\\\\nmessageHeader.setServiceID(serviceID);\\\\nmessageHeader.setSaleID(saleID);\\\\nmessageHeader.setMessageCategory( MessageCategoryType.PAYMENT );\\\\nsaleToPOIRequest.setMessageHeader(messageHeader);\\\\n\\\\nPaymentRequest paymentRequest = new PaymentRequest();\\\\nPaymentTransaction paymentTransaction = new PaymentTransaction();\\\\nAmountsReq amountsReq = new AmountsReq();\\\\namountsReq.setRequestedAmount( BigDecimal.valueOf(10.99) );\\\\namountsReq.setCurrency(\\\\\\&quot;EUR\\\\\\&quot;);\\\\npaymentTransaction.setAmountsReq(amountsReq);\\\\n\\\\nTransactionConditions transactionConditions = new TransactionConditions();\\\\npaymentTransaction.setTransactionConditions(transactionConditions);\\\\npaymentRequest.setPaymentTransaction(paymentTransaction);\\\\n\\\\nSaleData saleData = new SaleData();\\\\nsaleData.setSaleToAcquirerData(\\\\\\&quot;applicationInfo.externalPlatform.name=Best Store Commerce&amp;amp;applicationInfo.externalPlatform.version=1.3&amp;amp;applicationInfo.externalPlatform.integrator=AAA Systems&amp;amp;applicationInfo.merchantApplication.name=Best Instore&amp;amp;applicationInfo.merchantApplication.version=2.13.05&amp;amp;applicationInfo.merchantDevice.os=iOS&amp;amp;applicationInfo.merchantDevice.osVersion=16.3\\\\\\&quot;);\\\\nsaleData.setTokenRequestedType( TokenRequestedType.CUSTOMER );\\\\nTransactionIdentification saleTransactionID = new TransactionIdentification();\\\\nsaleTransactionID.setTransactionID(transactionID);\\\\nsaleTransactionID.setTimeStamp(DatatypeFactory.newInstance().newXMLGregorianCalendar(new GregorianCalendar()));\\\\nsaleData.setSaleTransactionID(saleTransactionID);\\\\npaymentRequest.setSaleData(saleData);\\\\nsaleToPOIRequest.setPaymentRequest(paymentRequest);\\\\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;Note that the payment response has the &lt;code&gt;AdditionalResponse&lt;\\\/code&gt; in the same format as the &lt;code&gt;SaleToAcquirerData&lt;\\\/code&gt;, form-encoded key-value pairs.&lt;\\\/p&gt;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n&lt;code-sample :title=\\&quot;&#039;Response with form-encoded AdditionalResponse&#039;\\&quot; :id=\\&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;PaymentResponse\\\\\\&quot;: {\\\\n            \\\\\\&quot;POIData\\\\\\&quot;: {...},\\\\n            \\\\\\&quot;SaleData\\\\\\&quot;: {...},\\\\n            \\\\\\&quot;PaymentReceipt\\\\\\&quot;: [...],\\\\n            \\\\\\&quot;PaymentResult\\\\\\&quot;: {\\\\n                \\\\\\&quot;OnlineFlag\\\\\\&quot;: true,\\\\n                \\\\\\&quot;PaymentAcquirerData\\\\\\&quot;: {...},\\\\n                \\\\\\&quot;PaymentInstrumentData\\\\\\&quot;: {\\\\n                    \\\\\\&quot;CardData\\\\\\&quot;: {...},\\\\n                    \\\\\\&quot;PaymentInstrumentType\\\\\\&quot;: \\\\\\&quot;Card\\\\\\&quot;\\\\n                },\\\\n                \\\\\\&quot;AmountsResp\\\\\\&quot;: {\\\\n                    \\\\\\&quot;AuthorizedAmount\\\\\\&quot;: 10.99,\\\\n                    \\\\\\&quot;Currency\\\\\\&quot;: \\\\\\&quot;EUR\\\\\\&quot;\\\\n                },\\\\n                \\\\\\&quot;CustomerLanguage\\\\\\&quot;: \\\\\\&quot;nl\\\\\\&quot;\\\\n            },\\\\n            \\\\\\&quot;Response\\\\\\&quot;: {\\\\n                \\\\\\&quot;Result\\\\\\&quot;: \\\\\\&quot;Success\\\\\\&quot;,\\\\n                \\\\\\&quot;AdditionalResponse\\\\\\&quot;: \\\\\\&quot;tid=46403161&amp;amp;AID=A000000004101001&amp;amp;transactionType=GOODS_SERVICES&amp;amp;transactionLanguage=nl&amp;amp;backendGiftcardIndicator=false&amp;amp;posadditionalamounts.originalAmountValue=1099&amp;amp;expiryYear=2028&amp;amp;acquirerAccountCode=TestPmmAcquirerAccount&amp;amp;alias=M469509594859802&amp;amp;posAmountGratuityValue=0&amp;amp;giftcardIndicator=false&amp;amp;authorisedAmountValue=1099&amp;amp;pspReference=NC6HT9CRT65ZGN82&amp;amp;paymentMethodVariant=mc&amp;amp;refusalReasonRaw=APPROVED&amp;amp;authorisationMid=1000&amp;amp;applicationPreferredName=mc%20nl&amp;amp;acquirerCode=TestPmmAcquirer&amp;amp;store=StoreOne&amp;amp;txtime=12%3a01%3a38&amp;amp;iso8601TxDate=2020-04-16T10%3a01%3a38.0000000%2b0000&amp;amp;cardType=mc&amp;amp;posOriginalAmountValue=1099&amp;amp;offline=false&amp;amp;aliasType=Default&amp;amp;txdate=16-04-2020&amp;amp;paymentMethod=mc&amp;amp;cvcResult=0%20Unknown&amp;amp;authorisedAmountCurrency=EUR&amp;amp;startYear=2017&amp;amp;tc=937814089A435053&amp;amp;avsResult=0%20Unknown&amp;amp;cardIssueNumber=83&amp;amp;mid=1000&amp;amp;merchantReference=27910&amp;amp;transactionReferenceNumber=8815658961765250&amp;amp;expiryMonth=02&amp;amp;cardSummary=9999&amp;amp;posadditionalamounts.originalAmountCurrency=EUR&amp;amp;posAuthAmountCurrency=EUR&amp;amp;cardHolderVerificationMethodResults=1F0302&amp;amp;authCode=123456&amp;amp;cardIssuerCountryId=056&amp;amp;adjustAuthorisationData=BQABAQAxwj0UoZiGf8xhiQCIjFMiDxFxy6AYz6Rt%2bdEArIE2u%2fb6vdNfXkbmz3VzJ3Fx8QMF4P0fKuqcn5JUq6AHuMks7irgRyOOHMWxwixtds94L7Rzrg4gJyiGp22QA7U8aBDQOKQi1kloMBeJXuyuIgNGoCflQISnEfXMsofFOKCTXFpZ4CB5J0CvA69kGxDbcLbkJgFpXOImOV5iJ6aIfU%2boCTA3NdWbMdN2yx8BfqetsSncosykRNBBFmgs3O5OSl22I17r0o2JanwEyGpCOozo6Sr3aHPjQGnyAOwKikAvk64rrJrUQCSLT%2fHTp9QHqF5DK111k5uKhX3KdqZCE70UELh%2fYVKOpbw5fq0txwAVrSYAAHWk9o00GZbE9T%2fRK3Mz3R8xkcLCz2MjG867dnfF1K0yNIc5F1q%2fvhZ8Rt60sDEE61eTUENAZ2rU31tTrWb0cd3sREnBF%2beuDL6yEN5NyuIWkGBTT4bjg7E5OkkuTTw%2bKU5MCSxOjBC8XiMuh7NTMQ8qfZtw%2fCVneovIDtUKKJTsex9dq4OD1EQAwhjYAwKD6GlV9ir05HSrZh2Pv7Cf2Ygxz5rwHr0cKnBJ6HNR5L89zKMtOT4KHNWQrvdvWDXvzbStPjnQs5pM1U28CP0vfIZBErjz21vsRAKYuQIf3lxSKrIDo92wdCNh0Y%2fJccX4BQe7XYrOWgyRM7AM9PQ24UU0id5SHY0PNuU3g1tCXxX%2fA7igYFHveu0Gdz6aMjjIjzvVU74abtEHq%2b0ZTf%2bFR14%2bFABiwoDvTWrWAhI9ZF5kikAZCNzGWHRA1kezO0vQ8d55B4OEvw%3d%3d&amp;amp;posAmountCashbackValue=0&amp;amp;posEntryMode=CLESS_CHIP&amp;amp;startMonth=01&amp;amp;fundingSource=CREDIT&amp;amp;issuerCountry=BE&amp;amp;cardScheme=mc&amp;amp;cardBin=541333&amp;amp;posAuthAmountValue=1099\\\\\\&quot;\\\\n            }\\\\n        },\\\\n        \\\\\\&quot;MessageHeader\\\\\\&quot;: {...}\\\\n    }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&lt;\\\/li&gt;\\n&lt;\\\/ol&gt;\\n&quot;,&quot;altTitle&quot;:null,&quot;oldTabId&quot;:1,&quot;relation&quot;:&quot;&quot;}]\"\n            :should-update-when-url-changes='false'>\n        <\/tabs>\n    <\/div>\n<\/div>\n\n<div class=\"notices green\">\n<p>The format of the <code>SaleToAcquirerData<\/code>, Base64-encoded or key-value pairs, determines the format of the <code>AdditionalResponse<\/code> that you receive. To always receive the <code>AdditionalResponse<\/code> in one of those formats, contact our <a href=\"https:\/\/ca-test.adyen.com\/ca\/ca\/contactUs\/support.shtml?form=other\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Support Team<\/a>.<\/p>\n<\/div>\n<h2>Combining application info and other data elements<\/h2>\n<p>Apart from application info, you can also add other information in the <code>SaleToAcquirerData<\/code> field. For example, you can add <a href=\"\/point-of-sale\/add-data\/tender-options\">tender options<\/a> or <a href=\"\/point-of-sale\/add-data\">metadata<\/a>.<\/p>\n<p>To combine application info and other data elements, see <a href=\"\/point-of-sale\/add-data\">Add information to a payment<\/a>.<\/p>\n<h2>See also<\/h2>\n<div class=\"see-also-links output-inline\" id=\"see-also\">\n<ul><li><a href=\"\/point-of-sale\/add-data\"\n                        target=\"_self\"\n                        >\n                    Add information to a payment\n                <\/a><\/li><li><a href=\"\/point-of-sale\/add-data\/tender-options\"\n                        target=\"_self\"\n                        >\n                    Pass tender options\n                <\/a><\/li><\/ul><\/div>\n","url":"https:\/\/docs.adyen.com\/point-of-sale\/basic-tapi-integration\/pass-application-information","articleFields":{"description":"Provide platform, merchant application, and merchant device details to the Adyen Payments Platform.","feedback_component":true,"id":"42852844","type":"page","_expandable":{"operations":""},"status":"current","last_edit_on":"04-08-2021 11:53","parameters":{"integrationType":"pos"}},"algolia":{"url":"https:\/\/docs.adyen.com\/point-of-sale\/basic-tapi-integration\/pass-application-information","title":"Pass application information","content":"Application information identifies the software that you use for making payment requests to the Adyen payments platform. Add application info to your payment requests so that we can analyze and troubleshoot payments more efficiently and provide better support.\nRequirements\nIf you have built a Terminal API integration, there are no additional requirements, limitations, or preparations.\nApplication information fields\nInclude these fields in the applicationInfo object:\n\n\n\nField\nDescription\nRequired\nExample\n\n\n\n\nexternalPlatform.name\nYour company name or the name of your platform.\n\nBest Store Commerce\n\n\nexternalPlatform.version\nThe software version of the platform.\nIf your platform has versions.\n1.3\n\n\nexternalPlatform.integrator\nYour company name if you built the POS application, or the name of the service partner that built your integration.\n\nAAA Systems\n\n\nmerchantApplication.name\nThe name of the POS application or product being used.\n\nBest Instore\n\n\nmerchantApplication.version\nThe software version of the application.\nIf your application has versions.\n2.13.05\n\n\nmerchantDevice.os\nThe operating system of the device that runs the POS application.\n\niOS\n\n\nmerchantDevice.osVersion\nThe software version of the operating system.\n\n16.3\n\n\n\nField value requirements\nThe values you send in the application info fields can:\n\nBe between up to 40 characters in length.\nStart with a number or letter.\nContain letters, digits, dashes, underscores, and spaces.\n\n\nThe formatting of the values must be the same in every request.  For example, if the externalPlatform.name value is adVantage_Commerce_Suite, you cannot sometimes use a different value like adVantage_CommerceSuite or ADVANTAGECOMMERCESUITE. You must choose one format and use it for every request.\n\nAdd application info to your request\nTo add application info to your payment request, you pass data elements in the SaleToAcquirerData field. There are two ways to do that:\n\nOption 1: as a JSON object converted to a Base64-encoded string.\nOption 2: as form-encoded key-value pairs (using &amp; as a separator).\n\n\n\n    \n        \n        \n    \n\n\n\nThe format of the SaleToAcquirerData, Base64-encoded or key-value pairs, determines the format of the AdditionalResponse that you receive. To always receive the AdditionalResponse in one of those formats, contact our Support Team.\n\nCombining application info and other data elements\nApart from application info, you can also add other information in the SaleToAcquirerData field. For example, you can add tender options or metadata.\nTo combine application info and other data elements, see Add information to a payment.\nSee also\n\n\n                    Add information to a payment\n                \n                    Pass tender options\n                \n","type":"page","locale":"en","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"In-person payments","lvl2":"Implement the payment flow","lvl3":"Pass application information"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/point-of-sale","lvl2":"https:\/\/docs.adyen.com\/point-of-sale\/basic-tapi-integration","lvl3":"\/point-of-sale\/basic-tapi-integration\/pass-application-information"},"levels":4,"category":"In-person payments","category_color":"green","tags":["application","information"]},"articleFiles":{"pass-app-info-base64.json":"<p alt=\"\">pass-app-info-base64.json<\/p>","pass-app-info-key-value.json":"<p alt=\"\">pass-app-info-key-value.json<\/p>","reponse-pass-app-info-key-value.json":"<p alt=\"\">reponse-pass-app-info-key-value.json<\/p>","response-pass-app-info-base64.json":"<p alt=\"\">response-pass-app-info-base64.json<\/p>"}}
