{"metadata":{"image":[],"title":"","description":""},"api":{"url":"","auth":"required","results":{"codes":[]},"settings":"","params":[]},"next":{"description":"","pages":[]},"title":"Level 2/3 Data","type":"basic","slug":"level-23-data","excerpt":"","body":"Card processing can be categorized into different levels, with each level defined by how much data is required to process the transaction. Enhanced data levels, such as Level 2 and Level 3, require extra information to process the transaction and are most useful for corporations and government agencies that require this type of transaction detail to accurately monitor and track expenses. BlueSnap's Payment API supports Level 2/3 data processing for all currencies, allowing you to expand your business-to-business (B2B) and business-to-government (B2G) sales opportunities.\n\nThis guide covers the following topics: \n* [Data levels](#section-data-levels) \n* [Required properties](#section-required-properties) \n * [Required properties for MasterCard](#required_mc) \n * [Required properties for Visa](#required_visa) \n * [Required properties for Amex](#section-required-for-amex) \n* [Sending Level 3 data examples](#section-sending-level-3-data-examples)\n * [JSON examples](#section-json-examples) \n * [XML examples](#section-xml-example) \n* [Test Cards](#section-test-cards) \n<br />\n[block:callout]\n{\n \"type\": \"warning\",\n \"title\": \"Before you begin\",\n \"body\": \"* Level 2/3 Data is supported for select configurations. Contact [Merchant Support](https://bluesnap.zendesk.com/hc/en-us/requests/new?ticket_form_id=360000127087) for more details.\\n* Do not include the pipe character `|` in a Level 2 or Level 3 data field. Including the character causes fields to be parsed incorrectly.\\n* If you don't know the card type, pass as many `level3Data` properties as you can. \\n * If you pass a property that exceeds the maximum length, BlueSnap truncates the value to meet requirements.\\n * If BlueSnap detects the card doesn't support Level 2/3 Data, the `level3Data` properties are not sent to the issuer.\\n* If Level 3 data is sent in both the Auth Only and Capture requests, the Level 3 data from the Auth Only request will be ignored.\\n* If Level 3 data is sent in the Auth Only request but not sent in the Capture, BlueSnap will include the Level 3 data from the Auth Only request with the Capture request.\\n* If you manage your own subscriptions, you must send `level3Data` for each charge.\"\n}\n[/block]\n\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n<hr />\n# Data levels \n[block:parameters]\n{\n \"data\": {\n \"h-0\": \"Card brand\",\n \"h-1\": \"Supports\",\n \"0-0\": \"MasterCard<span> </span>\",\n \"0-1\": \"[**Level 2**](#required_mc_l2)\\n[**Level 3**](#required_mc_l3)\",\n \"1-0\": \"Visa\",\n \"1-1\": \"[**Level 2**](#required_visa_l2)\\n[**Level 3**](#required_visa_l3)\",\n \"h-2\": \"Level 2\",\n \"h-3\": \"Level 2 with TAA\",\n \"h-4\": \"Level 3\",\n \"0-2\": \"**\",\n \"2-0\": \"Amex\",\n \"2-1\": \"**Level 2**\\n**Level 2 with TAA (Transaction Advice Addendum)** \\n>Level 2 with TAA is an Amex-specific level that contains item data (such as item description and quantity) in addition to Level 2 fields. For more details, refer to [Required properties for Amex](#section-required-for-amex).\"\n },\n \"cols\": 2,\n \"rows\": 3\n}\n[/block]\n\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n<hr />\n# Required properties\n<span id=\"required_mc\"> </span>\n## Required for MasterCard\n\n\n<span id=\"required_mc_l2\"> </span>**Required for MasterCard for Level 2 Data**\nOnly the following are required for Level **2** Data:\n* `customerReferenceNumber` / `customer‑reference‑number`\n* `salesTaxAmount` / `sales‑tax‑amount`\n<span> </span>\n\n<span id=\"required_mc_l3\"> </span>**Required for MasterCard for Level 3 Data**\nThe following table outlines the required properties for Level 3 Data. \n[block:html]\n{\n \"html\": \"<div>\\n\\n <table id=\\\"l3d_for_mc\\\">\\n\\n <tr>\\n <th>Hierarchy</th>\\n <th>Property (<span style=\\\"font-family:'Courier New';\\\">JSON XML</span>)</th>\\n <th style=\\\"text-align:center\\\">Level 3 Details</th>\\n </tr>\\n\\n <tr>\\n <td rowspan=\\\"12\\\">\\n <p><b>Order level</b></p>\\n </td>\\n <td colspan=\\\"2\\\">For details regarding the specifics of a property, refer to: <a\\n href=\\\"https://developers.bluesnap.com/v8976-JSON/docs/level3data\\\"><span\\n class=\\\"api\\\">level3Data</span><span style=\\\"font-size:small\\\">\\n (JSON)</span></a> or <a\\n href=\\\"https://developers.bluesnap.com/v8976-XML/docs/level-3-data\\\"><span\\n class=\\\"api\\\">level-3-data</span><span style=\\\"font-size:small\\\"> (XML)</span></a></td>\\n </tr>\\n\\n <tr>\\n <td><span class=\\\"api\\\">customerReferenceNumber<br />customer‑reference‑number</span></td>\\n <td><b>Mandatory</b> — If the value we receive is all spaces, we replace the value with <b><span\\n class=\\\"api\\\">NA</span></b>.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">salesTaxAmount<br />sales‑tax‑amount</span></td>\\n <td><b>Mandatory</b> — If the value we receive is all spaces, we replace the value with all zeros.</p>\\n </td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">freightAmount<br />freight‑amount</span></td>\\n <td><b>Not mandatory</b> — However, if a value is sent and the value we receive is all spaces, we\\n replace the value with all zeros.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">dutyAmount<br />duty‑amount</span></td>\\n <td><b>Not mandatory</b> — However, if a value is sent and the value we receive is all spaces, we\\n replace the value with all zeros.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">destinationZipCode<br />destination‑zip‑code</span></td>\\n <td><b>Not mandatory</b> — However, if a value is sent and the value we receive is all spaces, we\\n replace the value with <b><span class=\\\"api\\\">0</span></b>.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">destinationCountryCode<br />destination‑country‑code</span></td>\\n <td><b>Not mandatory</b> — However, if a value is sent and the value is not valid, we replace the value with all spaces. </td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">shipFromZipCode<br />ship‑from‑zip‑code</span></td>\\n <td><b>Not mandatory</b> — However, if a value is sent and the value we receive is all spaces, we\\n replace the value with <b><span class=\\\"api\\\">0</span></b>.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">discountAmount<br />discount‑amount</span></td>\\n <td><b>Not mandatory</b> — However, if a value is sent and the value we receive is not a valid value\\n (numeric <b><span class=\\\"api\\\">0</span></b>–<b><span class=\\\"api\\\">9</span></b>), we replace the value with\\n all zeros.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">taxAmount<br />tax‑amount</span></td>\\n <td><b>Not mandatory</b> — However, if the value is sent and it is not valid, we replace the value\\n with all zeros. Also, if any value is sent, even all zeros, Tax Rate is required.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">taxRate<br />tax‑rate</span></td>\\n <td><b>Mandatory</b> if the Tax Amount is present — If the value we receive is not a valid value, we\\n replace the value with all zeros.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">level3DataItem<br />level‑3‑data‑item</span>\\n </td>\\n <td><b>Mandatory</b> — Container for the data item properties shown below. See details below.</td>\\n </tr>\\n\\n\\n <tr>\\n <td rowspan=\\\"14\\\">\\n <p><b>Item level</b></p>\\n </td>\\n <td colspan=\\\"2\\\" style=\\\"padding-left: 20px\\\">\\n <p>The following are the required <b>data item</b> properties. For details regarding the specifics of a\\n property, refer to: <a\\n href=\\\"https://developers.bluesnap.com/v8976-JSON/docs/level3dataitems\\\"><span\\n class=\\\"api\\\">level3DataItems</span><span style=\\\"font-size:small\\\">\\n (JSON)</span></a> or <a\\n href=\\\"https://developers.bluesnap.com/v8976-XML/docs/level-3-data-item\\\"><span\\n class=\\\"api\\\">level‑3‑data‑item</span><span style=\\\"font-size:small\\\">\\n (XML)</span></a></p>\\n\\n <p><strong>Note:</strong> You may pass the following properties for each item. A maximum of 97 line items is supported. If you send more than 97 line items in the request, the first 97 will be accepted and the rest will be ignored.</p>\\n </td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">lineItemTotal</span>\\n <br /><span class=\\\"api\\\">line‑item‑total</span>\\n </td>\\n <td><b>Mandatory</b> — If the value we receive is not a valid value (numeric <b><span\\n class=\\\"api\\\">0</span></b>–<b><span class=\\\"api\\\">9</span></b>), we replace the value with <b><span\\n class=\\\"api\\\">1</span></b>.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">commodityCode</span>\\n <br /><span class=\\\"api\\\">commodity‑code</span>\\n </td>\\n <td><b>Not mandatory</b></td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">description</span>\\n <br /><span class=\\\"api\\\">description</span>\\n </td>\\n <td><b>Mandatory</b> — If the value we receive is all spaces or all zeros, we replace the value with\\n <b><span class=\\\"api\\\">NA</span></b>.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">discountAmount</span>\\n <br /><span class=\\\"api\\\">discount‑amount</span>\\n </td>\\n <td><b>Not mandatory</b> — However, if a value is sent and the value we receive is not a valid value\\n (numeric <b><span class=\\\"api\\\">0</span></b>–<b><span class=\\\"api\\\">9</span></b>), we replace the value with\\n all zeros.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">discountIndicator</span>\\n <br /><span class=\\\"api\\\">discount‑indicator</span>\\n </td>\\n <td><b>Not mandatory</b> — However, if the value is not <b><span class=\\\"api\\\">Y</span></b> or <b><span\\n class=\\\"api\\\">N</span></b>, we replace the value with <b><span class=\\\"api\\\">N</span></b>.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">grossNetIndicator</span>\\n <br /><span class=\\\"api\\\">gross‑net‑indicator</span>\\n </td>\\n <td><b>Not mandatory</b> — However, if the value is not <b><span class=\\\"api\\\">Y</span></b> or <b><span\\n class=\\\"api\\\">N</span></b>, we replace the value with <b><span class=\\\"api\\\">N</span></b>.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">productCode</span>\\n <br /><span class=\\\"api\\\">product‑code</span>\\n </td>\\n <td><b>Mandatory</b> — If the value we receive is all spaces or all zeros, we replace the value with\\n <b><span class=\\\"api\\\">NA</span></b>.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">itemQuantity</span>\\n <br /><span class=\\\"api\\\">item‑quantity</span>\\n </td>\\n <td><b>Mandatory</b> — If the value we receive is all spaces or all zeros, we replace the value with\\n <b><span class=\\\"api\\\">1</span></b>.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">taxAmount</span>\\n <br /><span class=\\\"api\\\">tax‑amount</span>\\n </td>\\n <td><b>Not mandatory</b> — However, if the value is sent and it is not valid, we replace the value\\n with all zeros. Also, if any value is sent, even all zeros, Tax Rate is required.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">taxRate</span>\\n <br /><span class=\\\"api\\\">tax‑rate</span>\\n </td>\\n <td><b>Mandatory</b> if the Tax Amount is present — If the value we receive is not a valid value, we\\n replace the value with all zeros.</td>\\n </tr>\\n\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">taxType</span>\\n <br /><span class=\\\"api\\\">tax‑type</span>\\n </td>\\n <td><b>Not mandatory</b> — However, if a value is sent and the value we receive is not a valid value,\\n we replace the value with all spaces.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left:20px\\\">\\n <span class=\\\"api\\\">unitOfMeasure</span>\\n <br /><span class=\\\"api\\\">unit‑of‑measure</span>\\n </td>\\n <td><b>Not mandatory</b> — However, if the value we receive is all spaces or all zeros, we replace the value with NA.</td>\\n </tr>\\n\\n </table>\\n\\n</div>\\n\\n<style>\\n .api {\\n font-family: 'Courier New';\\n background-color: #efefef;\\n }\\n\\n .center {\\n display: table-cell;\\n text-align: center;\\n }\\n\\n table td {\\n display: table-cell;\\n vertical-align: top;\\n }\\n\\n table th {\\n display: table-cell;\\n vertical-align: top;\\n }\\n</style>\"\n}\n[/block]\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n<hr />\n\n<span id=\"required_visa\"> </span>\n## Required for Visa\n\n<span id=\"required_visa_l2\"> </span>**Required for Visa for Level 2 Data**\nOnly the following are required for Level 2 Data:\n* `customerReferenceNumber` / `customer‑reference‑number`\n* `salesTaxAmount` / `sales‑tax‑amount`\n<span> </span>\n\n<span id=\"required_visa_l3\"> </span>**Required for Visa for Level 3 Data**\nThe following table outlines the required properties for Level 3 Data. \n[block:html]\n{\n \"html\": \"<div>\\n\\n <table id=\\\"l3d_for_visa\\\">\\n\\n <tr>\\n <th>Hierarchy</th>\\n <th>Property (<span style=\\\"font-family:'Courier New';\\\">JSON XML</span>)</th>\\n <th style=\\\"text-align:center\\\">Level 3 Details</th>\\n </tr>\\n\\n <tr>\\n <td rowspan=\\\"12\\\">\\n <p><b>Order level</b></p>\\n </td>\\n <td colspan=\\\"2\\\">For details regarding the specifics of a property, refer to: <a\\n href=\\\"https://developers.bluesnap.com/v8976-JSON/docs/level3data\\\"><span\\n class=\\\"api\\\">level3Data</span><span style=\\\"font-size:small\\\">\\n (JSON)</span></a> or <a\\n href=\\\"https://developers.bluesnap.com/v8976-XML/docs/level-3-data\\\"><span\\n class=\\\"api\\\">level-3-data</span><span style=\\\"font-size:small\\\"> (XML)</span></a></td>\\n </tr>\\n\\n <tr>\\n <td><span class=\\\"api\\\">customerReferenceNumber<br />customer‑reference‑number</span></td>\\n <td><b>Not mandatory</b></td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">salesTaxAmount<br />sales‑tax‑amount</span></td>\\n <td><b>Not mandatory</b></p>\\n </td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">freightAmount<br />freight‑amount</span></td>\\n <td><b>Not mandatory</b> — However, if a value is sent and the value we receive is all spaces, we\\n replace the value with all zeros.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">dutyAmount<br />duty‑amount</span></td>\\n <td><b>Not mandatory</b> — However, if a value is sent and the value we receive is all spaces, we\\n replace the value with all zeros.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">destinationZipCode<br />destination‑zip‑code</span></td>\\n <td><b>Not mandatory</b> — We do not change the value.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">destinationCountryCode<br />destination‑country‑code</span></td>\\n <td><b>Not mandatory</b> — However, if a value is sent and the value we receive is not a valid value, we replace the value with all spaces.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">shipFromZipCode<br />ship‑from‑zip‑code</span></td>\\n <td><b>Not mandatory</b> — We do not change the value.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">discountAmount<br />discount‑amount</span></td>\\n <td><b>Not mandatory</b> — However, if a value is sent and the value we receive is not a valid value\\n (numeric <b><span class=\\\"api\\\">0</span></b>–<b><span class=\\\"api\\\">9</span></b>), we replace the value with\\n all zeros.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">taxAmount<br />tax‑amount</span></td>\\n <td><b>Not mandatory</b> — However, if the value is sent and it is not valid, we replace the value\\n with all zeros. Also, if any value is sent, even all zeros, Tax Rate is required.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">taxRate<br />tax‑rate</span></td>\\n <td><b>Mandatory</b> if the Tax Amount is present — If the value we receive is not a valid value, we\\n replace the value with all zeros.</td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">level3DataItem<br />level‑3‑data‑item</span>\\n </td>\\n <td><b>Mandatory</b> — Container for the data item properties shown below. See details below.</td>\\n </tr>\\n\\n\\n <tr>\\n <td rowspan=\\\"14\\\">\\n <p><b>Item level</b></p>\\n </td>\\n <td colspan=\\\"2\\\">\\n <p>The following are the required <b>data item</b> properties. For details regarding the specifics of a\\n property, refer to: <a\\n href=\\\"https://developers.bluesnap.com/v8976-JSON/docs/level3dataitems\\\"><span\\n class=\\\"api\\\">level3DataItems</span><span style=\\\"font-size:small\\\">\\n (JSON)</span></a> or <a\\n href=\\\"https://developers.bluesnap.com/v8976-XML/docs/level-3-data-item\\\"><span\\n class=\\\"api\\\">level‑3‑data‑item</span><span style=\\\"font-size:small\\\">\\n (XML)</span></a></p>\\n\\n <p><strong>Note:</strong> You may pass the following properties for each item. A maximum of 97 line items is supported. If you send more than 97 line items in the request, the first 97 will be accepted and the rest will be ignored. </p>\\n </td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">lineItemTotal</span>\\n <br /><span class=\\\"api\\\">line‑item‑total</span>\\n </td>\\n <td><b>Mandatory</b> — If the value we receive is not a valid value (numeric <b><span\\n class=\\\"api\\\">0</span></b>–<b><span class=\\\"api\\\">9</span></b>), we replace the value with <b><span\\n class=\\\"api\\\">1</span></b>.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">commodityCode</span>\\n <br /><span class=\\\"api\\\">commodity‑code</span>\\n </td>\\n <td><b>Mandatory</b> — If the value we receive is all spaces or all zeros, we replace the value with\\n <b><span class=\\\"api\\\">00101</span></b>.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">description</span>\\n <br /><span class=\\\"api\\\">description</span>\\n </td>\\n <td><b>Mandatory</b> — If the value we receive is all spaces or all zeros, we replace the value with\\n <b><span class=\\\"api\\\">NA</span></b>.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">discountAmount</span>\\n <br /><span class=\\\"api\\\">discount‑amount</span>\\n </td>\\n <td><b>Not mandatory</b> — However, if a value is sent and the value we receive is not a valid value\\n (numeric <b><span class=\\\"api\\\">0</span></b>–<b><span class=\\\"api\\\">9</span></b>), we replace the value with\\n all zeros.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">productCode</span>\\n <br /><span class=\\\"api\\\">product‑code</span>\\n </td>\\n <td><b>Mandatory</b> — If the value we receive is all spaces or all zeros, we replace the value with\\n <b><span class=\\\"api\\\">NA</span></b>.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">itemQuantity</span>\\n <br /><span class=\\\"api\\\">item‑quantity</span>\\n </td>\\n <td><b>Mandatory</b> — If the value we receive is all spaces or all zeros, we replace the value with\\n <b><span class=\\\"api\\\">1</span></b>.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">taxAmount</span>\\n <br /><span class=\\\"api\\\">tax‑amount</span>\\n </td>\\n <td><b>Not mandatory</b> — However, if the value is sent and it is not valid, we replace the value\\n with all zeros. Also, if any value is sent, even all zeros, Tax Rate is required.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">taxRate</span>\\n <br /><span class=\\\"api\\\">tax‑rate</span>\\n </td>\\n <td><b>Mandatory</b> if the Tax Amount is present — If the value we receive is not a valid value, we\\n replace the value with all zeros.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">unitCost</span>\\n <br /><span class=\\\"api\\\">unit‑cost</span>\\n </td>\\n <td><b>Mandatory</b> — If the value we receive is all spaces or all zeros, we replace the value with\\n <b><span class=\\\"api\\\">1</span></b>.</td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left:20px\\\">\\n <span class=\\\"api\\\">unitOfMeasure</span>\\n <br /><span class=\\\"api\\\">unit‑of‑measure</span>\\n </td>\\n <td><b>Not mandatory</b> — If the value we receive is all spaces or all zeros, we replace the value with\\n <b><span class=\\\"api\\\">NA</span></b>.</td>\\n </tr>\\n\\n </table>\\n\\n</div>\\n\\n<style>\\n .api {\\n font-family: 'Courier New';\\n background-color: #efefef;\\n }\\n\\n .center {\\n display: table-cell;\\n text-align: center;\\n }\\n\\n table td {\\n display: table-cell;\\n vertical-align: top;\\n }\\n\\n table th {\\n display: table-cell;\\n vertical-align: top;\\n }\\n</style>\"\n}\n[/block]\n<span> </span>\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n<hr />\n\n## Required for Amex\nThe following table outlines the required properties for **Amex Level 2 with TAA (Transaction Advice Addendum)**. This is an Amex-specific level that contains item data (such as item description and quantity) in addition to Level 2 fields. Only the following fields are applicable.\n[block:html]\n{\n \"html\": \"<div>\\n\\n <table id=\\\"l3d_for_amex\\\">\\n\\n <tr>\\n <th>Hierarchy</th>\\n <th>Property (<span style=\\\"font-family:'Courier New';\\\">JSON XML</span>)</th>\\n <th style=\\\"text-align:center\\\">Amex Level 2 with TAA</th>\\n </tr>\\n\\n <tr>\\n <td rowspan=\\\"5\\\">\\n <p><b>Order level</b></p>\\n </td>\\n <td colspan=\\\"2\\\">For details regarding the specifics of a property, refer to: <a\\n href=\\\"https://developers.bluesnap.com/v8976-JSON/docs/level3data\\\"><span\\n class=\\\"api\\\">level3Data</span><span style=\\\"font-size:small\\\">\\n (JSON)</span></a> or <a\\n href=\\\"https://developers.bluesnap.com/v8976-XML/docs/level-3-data\\\"><span\\n class=\\\"api\\\">level-3-data</span><span style=\\\"font-size:small\\\"> (XML)</span></a></td>\\n </tr>\\n\\n <tr>\\n <td><span class=\\\"api\\\">customerReferenceNumber<br />customer‑reference‑number</span></td>\\n <td ><b>Mandatory</b></td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">salesTaxAmount<br />sales‑tax‑amount</span></td>\\n <td><b>Mandatory</b></td>\\n </tr>\\n\\n\\n <tr>\\n <td><span class=\\\"api\\\">destinationZipCode<br />destination‑zip‑code</span></td>\\n <td><b>Optional</b></td>\\n </tr>\\n\\n <tr>\\n <td><span class=\\\"api\\\">level3DataItem<br />level‑3‑data‑item</span>\\n </td>\\n <td><b>Mandatory</b> — Container for the data item properties shown below. See details below.</td>\\n </tr>\\n\\n\\n <tr>\\n <td rowspan=\\\"4\\\">\\n <p><b>Item level</b></p>\\n </td>\\n <td colspan=\\\"2\\\" style=\\\"padding-left: 20px\\\">\\n <p>The following are the required <b>data item</b> properties. For details regarding the specifics of a\\n property, refer to: <a\\n href=\\\"https://developers.bluesnap.com/v8976-JSON/docs/level3dataitems\\\"><span\\n class=\\\"api\\\">level3DataItems</span><span style=\\\"font-size:small\\\">\\n (JSON)</span></a> or <a\\n href=\\\"https://developers.bluesnap.com/v8976-XML/docs/level-3-data-item\\\"><span\\n class=\\\"api\\\">level‑3‑data‑item</span><span style=\\\"font-size:small\\\">\\n (XML)</span></a></p>\\n\\n <p><strong>Note:</strong> You may pass the following properties for each item. A maximum of 97 line items is supported. If you send more than 97 line items in the request, the first 97 will be accepted and the rest will be ignored. </p>\\n </td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">lineItemTotal</span>\\n <br /><span class=\\\"api\\\">line‑item‑total</span>\\n </td>\\n <td><b>Optional</b></td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">description</span>\\n <br /><span class=\\\"api\\\">description</span>\\n </td>\\n <td><b>Mandatory</b></td>\\n </tr>\\n\\n <tr>\\n <td style=\\\"padding-left: 20px\\\">\\n <span class=\\\"api\\\">itemQuantity</span>\\n <br /><span class=\\\"api\\\">item‑quantity</span>\\n </td>\\n <td><b>Optional</b></td>\\n </tr>\\n\\n\\n </table>\\n\\n</div>\\n\\n<style>\\n .api {\\n font-family: 'Courier New';\\n background-color: #efefef;\\n }\\n\\n .center {\\n display: table-cell;\\n text-align: center;\\n }\\n\\n table td {\\n display: table-cell;\\n vertical-align: top;\\n }\\n\\n table th {\\n display: table-cell;\\n vertical-align: top;\\n }\\n</style>\"\n}\n[/block]\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n<hr />\n\n# Sending Level 3 data examples\nLevel 3 data is supported in Auth Capture, as well as in the Auth Only and Capture requests. \n\n##JSON examples\n*Sample [Auth Capture](/v8976-JSON/docs/auth-capture) request and response* \n[block:code]\n{\n \"codes\": [\n {\n \"code\": \"{\\n \\\"cardTransactionType\\\": \\\"AUTH_CAPTURE\\\",\\n \\\"softDescriptor\\\": \\\"DescTest\\\",\\n \\\"amount\\\": 10.60,\\n \\\"currency\\\": \\\"USD\\\",\\n \\\"cardHolderInfo\\\": {\\n \\\"firstName\\\": \\\"test first name\\\",\\n \\\"lastName\\\": \\\"test last name\\\",\\n \\\"zip\\\": \\\"123456\\\"\\n },\\n \\\"creditCard\\\": {\\n \\\"cardNumber\\\": \\\"4005 5192 0000 0004\\\",\\n \\\"securityCode\\\": \\\"111\\\",\\n \\\"expirationMonth\\\": \\\"09\\\",\\n \\\"expirationYear\\\": 2023\\n },\\n \\\"level3Data\\\": {\\n \\\"customerReferenceNumber\\\": \\\"1234A\\\",\\n \\\"salesTaxAmount\\\": 0.6,\\n \\\"freightAmount\\\": 0,\\n \\\"dutyAmount\\\": 0,\\n \\\"destinationZipCode\\\": \\\"12345\\\",\\n \\\"destinationCountryCode\\\": \\\"us\\\",\\n \\\"shipFromZipCode\\\": \\\"12345\\\",\\n \\\"discountAmount\\\": 0,\\n \\\"taxAmount\\\": 0.6,\\n \\\"taxRate\\\": 6.0,\\n \\\"level3DataItems\\\": [{\\n \\\"lineItemTotal\\\": 10.00,\\n \\\"description\\\": \\\"test_desc\\\",\\n \\\"discountAmount\\\": 0,\\n \\\"productCode\\\": \\\"test_code\\\",\\n \\\"itemQuantity\\\": 1.0,\\n \\\"taxAmount\\\": 0.60,\\n \\\"taxRate\\\": 6.0,\\n \\\"unitOfMeasure\\\": \\\"lb\\\",\\n \\\"commodityCode\\\": \\\"123\\\",\\n \\\"discountIndicator\\\": \\\"Y\\\",\\n \\\"grossNetIndicator\\\": \\\"Y\\\",\\n \\\"taxType\\\": \\\"test\\\",\\n \\\"unitCost\\\": 10.00\\n }]\\n }\\n}\",\n \"language\": \"json\",\n \"name\": \"Auth Capture with Level 3 data - request\"\n },\n {\n \"code\": \"{\\n \\\"cardTransactionType\\\": \\\"AUTH_CAPTURE\\\",\\n \\\"vendorsInfo\\\": {},\\n \\\"transactionId\\\": \\\"1015836179\\\",\\n \\\"softDescriptor\\\": \\\"BLS*DescTest\\\",\\n \\\"amount\\\": 10.60,\\n \\\"currency\\\": \\\"USD\\\",\\n \\\"avsResponseCode\\\": \\\"G\\\",\\n \\\"cardHolderInfo\\\": {\\n \\\"firstName\\\": \\\"test first name\\\",\\n \\\"lastName\\\": \\\"test last name\\\",\\n \\\"zip\\\": \\\"123456\\\"\\n },\\n \\\"vaultedShopperId\\\": 22391925,\\n \\\"creditCard\\\": {\\n \\\"cardLastFourDigits\\\": \\\"0004\\\",\\n \\\"cardType\\\": \\\"VISA\\\",\\n \\\"cardSubType\\\": \\\"CREDIT\\\",\\n \\\"cardCategory\\\": \\\"CORPORATE T&E\\\"\\n },\\n \\\"level3Data\\\": {\\n \\\"customerReferenceNumber\\\": \\\"1234A\\\",\\n \\\"salesTaxAmount\\\": 0.6,\\n \\\"freightAmount\\\": 0,\\n \\\"dutyAmount\\\": 0,\\n \\\"destinationZipCode\\\": \\\"12345\\\",\\n \\\"destinationCountryCode\\\": \\\"us\\\",\\n \\\"shipFromZipCode\\\": \\\"12345\\\",\\n \\\"discountAmount\\\": 0,\\n \\\"taxAmount\\\": 0.6,\\n \\\"taxRate\\\": 6,\\n \\\"transactionProcessedWithL3dSupportedAcquirer\\\": true,\\n \\\"level3DataItems\\\": [{\\n \\\"lineItemTotal\\\": 10,\\n \\\"commodityCode\\\": \\\"123\\\",\\n \\\"description\\\": \\\"test_desc\\\",\\n \\\"discountAmount\\\": 0,\\n \\\"discountIndicator\\\": \\\"Y\\\",\\n \\\"grossNetIndicator\\\": \\\"Y\\\",\\n \\\"productCode\\\": \\\"test_code\\\",\\n \\\"itemQuantity\\\": 1,\\n \\\"taxAmount\\\": 0.6,\\n \\\"taxRate\\\": 6,\\n \\\"taxType\\\": \\\"test\\\",\\n \\\"unitCost\\\": 10,\\n \\\"unitOfMeasure\\\": \\\"lb\\\"\\n }]\\n },\\n \\\"processingInfo\\\": {\\n \\\"processingStatus\\\": \\\"success\\\",\\n \\\"cvvResponseCode\\\": \\\"NR\\\",\\n \\\"avsResponseCodeZip\\\": \\\"U\\\",\\n \\\"avsResponseCodeAddress\\\": \\\"U\\\",\\n \\\"avsResponseCodeName\\\": \\\"U\\\"\\n },\\n \\\"fraudResultInfo\\\": {\\n \\\"deviceDataCollector\\\": \\\"N\\\"\\n }\\n}\",\n \"language\": \"json\",\n \"name\": \"Response\"\n }\n ]\n}\n[/block]\n*Sample [Auth Only](/v8976-JSON/docs/auth-only) request and response*\n[block:code]\n{\n \"codes\": [\n {\n \"code\": \"{\\n \\\"cardTransactionType\\\": \\\"AUTH_ONLY\\\",\\n \\\"softDescriptor\\\": \\\"DescTest\\\",\\n \\\"amount\\\": 10,\\n \\\"currency\\\": \\\"USD\\\",\\n \\\"cardHolderInfo\\\": {\\n \\\"firstName\\\": \\\"test first name\\\",\\n \\\"lastName\\\": \\\"test last name\\\"\\n },\\n \\\"creditCard\\\": {\\n \\\"cardNumber\\\": 4012000033330026,\\n \\\"securityCode\\\": 111,\\n \\\"cardType\\\": \\\"VISA\\\",\\n \\\"expirationMonth\\\": \\\"09\\\",\\n \\\"expirationYear\\\": 2023\\n },\\n \\\"level3Data\\\": {\\n \\\"customerReferenceNumber\\\": \\\"test\\\",\\n \\\"salesTaxAmount\\\": 87,\\n \\\"freightAmount\\\": 10,\\n \\\"dutyAmount\\\": 1,\\n \\\"destinationZipCode\\\": \\\"12345\\\",\\n \\\"destinationCountryCode\\\": \\\"us\\\",\\n \\\"shipFromZipCode\\\": \\\"12345\\\",\\n \\\"discountAmount\\\": 10,\\n \\\"vatTaxAmount\\\": 3,\\n \\\"vatTaxRate\\\": 3,\\n \\\"level3DataItems\\\": [\\n {\\n \\\"lineItemTotal\\\": 12377,\\n \\\"itemCommodityCode\\\": \\\"123\\\",\\n \\\"description\\\": \\\"test_desc\\\",\\n \\\"discountAmount\\\": 1,\\n \\\"discountIndicator\\\": \\\"Y\\\",\\n \\\"grossNetIndicator\\\": \\\"Y\\\",\\n \\\"productCode\\\": \\\"test_code\\\",\\n \\\"itemQuantity\\\": 10,\\n \\\"vatTaxAmount\\\": 3,\\n \\\"vatTaxRate\\\": 3,\\n \\\"taxTypeApplied\\\": \\\"test\\\",\\n \\\"unitCost\\\": 7,\\n \\\"unitOfMeasure\\\": \\\"usd\\\"\\n }\\n ]\\n }\\n}\",\n \"language\": \"json\",\n \"name\": \"Auth Only with Level 3 data - Request\"\n },\n {\n \"code\": \"{\\n \\\"cardTransactionType\\\": \\\"AUTH_ONLY\\\",\\n \\\"transactionId\\\": \\\"38550326\\\",\\n \\\"softDescriptor\\\": \\\"BLS*DescTest\\\",\\n \\\"amount\\\": 10.0,\\n \\\"usdAmount\\\": 10.0,\\n \\\"currency\\\": \\\"USD\\\",\\n \\\"avsResponseCode\\\": \\\"G\\\",\\n \\\"cardHolderInfo\\\": {\\n \\\"firstName\\\": \\\"test first name\\\",\\n \\\"lastName\\\": \\\"test last name\\\"\\n },\\n \\\"vaultedShopperId\\\": 19590368,\\n \\\"creditCard\\\": {\\n \\\"cardLastFourDigits\\\": \\\"0026\\\",\\n \\\"cardType\\\": \\\"VISA\\\",\\n \\\"binCategory\\\": \\\"CONSUMER\\\",\\n \\\"binNumber\\\": \\\"401200\\\",\\n \\\"expirationMonth\\\": \\\"09\\\",\\n \\\"expirationYear\\\": \\\"2023\\\"\\n },\\n \\\"level3Data\\\": {\\n \\\"customerReferenceNumber\\\": \\\"test\\\",\\n \\\"salesTaxAmount\\\": 87,\\n \\\"freightAmount\\\": 10,\\n \\\"dutyAmount\\\": 1,\\n \\\"destinationZipCode\\\": \\\"12345\\\",\\n \\\"destinationCountryCode\\\": \\\"us\\\",\\n \\\"shipFromZipCode\\\": \\\"12345\\\",\\n \\\"discountAmount\\\": 10,\\n \\\"transactionProcessedWithL3DSupportedAcquirer\\\": true,\\n \\\"level3DataItems\\\": [\\n {\\n \\\"lineItemTotal\\\": 12377,\\n \\\"description\\\": \\\"test_desc\\\",\\n \\\"discountAmount\\\": 1,\\n \\\"discountIndicator\\\": \\\"Y\\\",\\n \\\"grossNetIndicator\\\": \\\"Y\\\",\\n \\\"productCode\\\": \\\"test_code\\\",\\n \\\"itemQuantity\\\": 10,\\n \\\"unitCost\\\": 7,\\n \\\"unitOfMeasure\\\": \\\"usd\\\"\\n }\\n ]\\n },\\n \\\"networkTransactionInfo\\\": {\\n \\\"originalNetworkTransactionId\\\": \\\"751005569293609\\\",\\n \\\"networkTransactionId\\\": \\\"751005569293609\\\"\\n },\\n \\\"processingInfo\\\": {\\n \\\"processingStatus\\\": \\\"success\\\",\\n \\\"cvvResponseCode\\\": \\\"MA\\\",\\n \\\"authorizationCode\\\": \\\"055099\\\",\\n \\\"avsResponseCodeZip\\\": \\\"U\\\",\\n \\\"avsResponseCodeAddress\\\": \\\"U\\\",\\n \\\"avsResponseCodeName\\\": \\\"U\\\",\\n \\\"networkTransactionId\\\": \\\"751005569293609\\\"\\n },\\n \\\"fraudResultInfo\\\": {\\n \\\"deviceDataCollector\\\": \\\"N\\\"\\n }\\n}\",\n \"language\": \"json\",\n \"name\": \"Response\"\n }\n ]\n}\n[/block]\n*Sample [Capture](/v8976-JSON/docs/capture) request and response* \n[block:code]\n{\n \"codes\": [\n {\n \"code\": \"{\\n \\\"cardTransactionType\\\": \\\"CAPTURE\\\",\\n \\\"transactionId\\\": \\\"38550328\\\",\\n \\\"level3Data\\\": {\\n \\\"customerReferenceNumber\\\": \\\"test\\\",\\n \\\"salesTaxAmount\\\": 87,\\n \\\"freightAmount\\\": 10,\\n \\\"dutyAmount\\\": 1,\\n \\\"destinationZipCode\\\": \\\"12345\\\",\\n \\\"destinationCountryCode\\\": \\\"us\\\",\\n \\\"shipFromZipCode\\\": \\\"12345\\\",\\n \\\"discountAmount\\\": 10,\\n \\\"vatTaxAmount\\\": 3,\\n \\\"vatTaxRate\\\": 3,\\n \\\"level3DataItems\\\": [\\n {\\n \\\"lineItemTotal\\\": 12377,\\n \\\"itemCommodityCode\\\": \\\"123\\\",\\n \\\"description\\\": \\\"test_desc\\\",\\n \\\"discountAmount\\\": 1,\\n \\\"discountIndicator\\\": \\\"Y\\\",\\n \\\"grossNetIndicator\\\": \\\"Y\\\",\\n \\\"productCode\\\": \\\"test_code\\\",\\n \\\"itemQuantity\\\": 10,\\n \\\"vatTaxAmount\\\": 3,\\n \\\"vatTaxRate\\\": 3,\\n \\\"taxTypeApplied\\\": \\\"test\\\",\\n \\\"unitCost\\\": 7,\\n \\\"unitOfMeasure\\\": \\\"usd\\\"\\n }\\n ]\\n }\\n}\",\n \"language\": \"json\",\n \"name\": \"Capture with Level 3 Data - Request\"\n },\n {\n \"code\": \"{\\n \\\"cardTransactionType\\\": \\\"CAPTURE\\\",\\n \\\"transactionId\\\": \\\"38550328\\\",\\n \\\"softDescriptor\\\": \\\"BLS*BS\\\",\\n \\\"amount\\\": 20.0,\\n \\\"usdAmount\\\": 20.0,\\n \\\"openToCapture\\\": 0,\\n \\\"currency\\\": \\\"USD\\\",\\n \\\"transactionApprovalDate\\\": \\\"01/05/2021\\\",\\n \\\"transactionApprovalTime\\\": \\\"07:58:07\\\",\\n \\\"cardHolderInfo\\\": {\\n \\\"firstName\\\": \\\"John\\\",\\n \\\"lastName\\\": \\\"Blue\\\",\\n \\\"email\\\": \\\"test:::at:::bluesnap. com\\\",\\n \\\"country\\\": \\\"us\\\"\\n },\\n \\\"vaultedShopperId\\\": 19590370,\\n \\\"creditCard\\\": {\\n \\\"cardLastFourDigits\\\": \\\"1111\\\",\\n \\\"cardType\\\": \\\"VISA\\\",\\n \\\"cardSubType\\\": \\\"CREDIT\\\",\\n \\\"binCategory\\\": \\\"CONSUMER\\\",\\n \\\"binNumber\\\": \\\"411111\\\",\\n \\\"cardRegulated\\\": \\\"Y\\\",\\n \\\"issuingBank\\\": \\\"JPMORGAN CHASE BANK, N.A.\\\",\\n \\\"expirationMonth\\\": \\\"7\\\",\\n \\\"expirationYear\\\": \\\"2023\\\",\\n \\\"issuingCountryCode\\\": \\\"us\\\"\\n },\\n \\\"level3Data\\\": {\\n \\\"customerReferenceNumber\\\": \\\"test\\\",\\n \\\"salesTaxAmount\\\": 87,\\n \\\"freightAmount\\\": 10,\\n \\\"dutyAmount\\\": 1,\\n \\\"destinationZipCode\\\": \\\"12345\\\",\\n \\\"destinationCountryCode\\\": \\\"us\\\",\\n \\\"shipFromZipCode\\\": \\\"12345\\\",\\n \\\"discountAmount\\\": 10,\\n \\\"transactionProcessedWithL3DSupportedAcquirer\\\": true,\\n \\\"level3DataItems\\\": [\\n {\\n \\\"lineItemTotal\\\": 12377,\\n \\\"description\\\": \\\"test_desc\\\",\\n \\\"discountAmount\\\": 1,\\n \\\"discountIndicator\\\": \\\"Y\\\",\\n \\\"grossNetIndicator\\\": \\\"Y\\\",\\n \\\"productCode\\\": \\\"test_code\\\",\\n \\\"itemQuantity\\\": 10,\\n \\\"unitCost\\\": 7,\\n \\\"unitOfMeasure\\\": \\\"usd\\\"\\n }\\n ]\\n },\\n \\\"networkTransactionInfo\\\": {\\n \\\"originalNetworkTransactionId\\\": \\\"751005573403769\\\",\\n \\\"networkTransactionId\\\": \\\"751005573403769\\\"\\n },\\n \\\"processingInfo\\\": {\\n \\\"processingStatus\\\": \\\"SUCCESS\\\",\\n \\\"cvvResponseCode\\\": \\\"MA\\\",\\n \\\"authorizationCode\\\": \\\"772239\\\",\\n \\\"avsResponseCodeZip\\\": \\\"U\\\",\\n \\\"avsResponseCodeAddress\\\": \\\"U\\\",\\n \\\"avsResponseCodeName\\\": \\\"U\\\",\\n \\\"networkTransactionId\\\": \\\"751005573403769\\\"\\n },\\n \\\"fraudResultInfo\\\": {\\n \\\"deviceDataCollector\\\": \\\"N\\\"\\n }\\n}\",\n \"language\": \"json\",\n \"name\": \"Response\"\n }\n ]\n}\n[/block]\n##XML examples\n*Sample [Auth Capture](/v8976-XML/docs/auth-capture) request and response* \n[block:code]\n{\n \"codes\": [\n {\n \"code\": \"<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\n<card-transaction xmlns=\\\"http://ws.plimus.com\\\">\\n <card-transaction-type>AUTH_CAPTURE</card-transaction-type>\\n <soft-descriptor>MYSTORE</soft-descriptor>\\n <amount>10.60</amount>\\n <currency>USD</currency>\\n <card-holder-info>\\n <first-name>test first name</first-name>\\n <last-name>test last name</last-name>\\n <zip>02453</zip>\\n <country>us</country>\\n </card-holder-info>\\n <credit-card>\\n <card-number>4005 5192 0000 0004</card-number>\\n <security-code>111</security-code>\\n <expiration-month>09</expiration-month>\\n <expiration-year>2023</expiration-year>\\n </credit-card>\\n <level-3-data>\\n <customer-reference-number>1234A</customer-reference-number>\\n <sales-tax-amount>0.6</sales-tax-amount>\\n <freight-amount>0</freight-amount>\\n <duty-amount>0</duty-amount>\\n <destination-zip-code>12345</destination-zip-code>\\n <destination-country-code>us</destination-country-code>\\n <ship-from-zip-code>12345</ship-from-zip-code>\\n <discount-amount>0</discount-amount>\\n <tax-amount>0.6</tax-amount>\\n <tax-rate>6.0</tax-rate>\\n <level-3-data-item>\\n <line-item-total>10.60</line-item-total>\\n <commodity-code>123</commodity-code>\\n <description>test_desc</description>\\n <discount-amount>0</discount-amount>\\n <discount-indicator>Y</discount-indicator>\\n <product-code>test_code</product-code>\\n <item-quantity>1.0</item-quantity>\\n <tax-amount>0.60</tax-amount>\\n <tax-rate>6.0</tax-rate>\\n <unit-of-measure>usd</unit-of-measure>\\n <gross-net-indicator>Y</gross-net-indicator>\\n <unit-cost>10.00</unit-cost>\\n </level-3-data-item>\\n </level-3-data>\\n</card-transaction>\",\n \"language\": \"xml\",\n \"name\": \"Auth Capture with Level 3 data - request\"\n },\n {\n \"code\": \"<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"yes\\\"?>\\n<card-transaction xmlns=\\\"http://ws.plimus.com\\\">\\n <card-transaction-type>AUTH_CAPTURE</card-transaction-type>\\n <transaction-id>1020736769</transaction-id>\\n <soft-descriptor>BLS*MYSTORE</soft-descriptor>\\n <amount>10.60</amount>\\n <usd-amount>10.60</usd-amount>\\n <currency>USD</currency>\\n <avs-response-code>J</avs-response-code>\\n <card-holder-info>\\n <first-name>test first name</first-name>\\n <last-name>test last name</last-name>\\n <country>us</country>\\n <zip>02453</zip>\\n </card-holder-info>\\n <vaulted-shopper-id>24122703</vaulted-shopper-id>\\n <credit-card>\\n <card-last-four-digits>0004</card-last-four-digits>\\n <card-type>VISA</card-type>\\n <card-sub-type>CREDIT</card-sub-type>\\n <card-category>CORPORATE T&E</card-category>\\n <bin-category>COMMERCIAL</bin-category>\\n <card-regulated>N</card-regulated>\\n <issuing-country-code>us</issuing-country-code>\\n </credit-card>\\n <level-3-data>\\n <customer-reference-number>1234A</customer-reference-number>\\n <sales-tax-amount>0.6</sales-tax-amount>\\n <freight-amount>0</freight-amount>\\n <duty-amount>0</duty-amount>\\n <destination-zip-code>12345</destination-zip-code>\\n <destination-country-code>us</destination-country-code>\\n <ship-from-zip-code>12345</ship-from-zip-code>\\n <discount-amount>0</discount-amount>\\n <tax-amount>0.6</tax-amount>\\n <tax-rate>6</tax-rate>\\n <transaction-processed-with-l3d-supported-acquirer>true</transaction-processed-with-l3d-supported-acquirer>\\n <level-3-data-item>\\n <line-item-total>10.6</line-item-total>\\n <commodity-code>123</commodity-code>\\n <description>test_desc</description>\\n <discount-amount>0</discount-amount>\\n <discount-indicator>Y</discount-indicator>\\n <gross-net-indicator>Y</gross-net-indicator>\\n <product-code>test_code</product-code>\\n <item-quantity>1</item-quantity>\\n <tax-amount>0.6</tax-amount>\\n <tax-rate>6</tax-rate>\\n <unit-cost>10</unit-cost>\\n <unit-of-measure>usd</unit-of-measure>\\n </level-3-data-item>\\n </level-3-data>\\n <processing-info>\\n <processing-status>success</processing-status>\\n <cvv-response-code>NR</cvv-response-code>\\n <avs-response-code-zip>U</avs-response-code-zip>\\n <avs-response-code-address>U</avs-response-code-address>\\n <avs-response-code-name>U</avs-response-code-name>\\n </processing-info>\\n <fraud-result-info>\\n <device-data-collector>N</device-data-collector>\\n </fraud-result-info>\\n</card-transaction>\\n\\n\",\n \"language\": \"xml\",\n \"name\": \"Response\"\n }\n ]\n}\n[/block]\n*Sample [Auth Only](/v8976-XML/docs/auth-only) request and response*\n[block:code]\n{\n \"codes\": [\n {\n \"code\": \"<card-transaction xmlns=\\\"http://ws.plimus.com\\\">\\n <card-transaction-type>AUTH_ONLY</card-transaction-type>\\n <soft-descriptor>DescTest</soft-descriptor>\\n <amount>10.60</amount>\\n <currency>USD</currency>\\n <card-holder-info>\\n <first-name>test first name</first-name>\\n <last-name>test last name</last-name>\\n <zip>02453</zip>\\n <country>us</country>\\n </card-holder-info>\\n <credit-card>\\n <card-number>4005 5192 0000 0004</card-number>\\n <security-code>111</security-code>\\n <expiration-month>09</expiration-month>\\n <expiration-year>2023</expiration-year>\\n </credit-card>\\n <level-3-data>\\n <customer-reference-number>1234A</customer-reference-number>\\n <sales-tax-amount>0.6</sales-tax-amount>\\n <freight-amount>0</freight-amount>\\n <duty-amount>0</duty-amount>\\n <destination-zip-code>12345</destination-zip-code>\\n <destination-country-code>us</destination-country-code>\\n <ship-from-zip-code>12345</ship-from-zip-code>\\n <discount-amount>0</discount-amount>\\n <tax-amount>0.6</tax-amount>\\n <tax-rate>6.0</tax-rate>\\n <level-3-data-item>\\n <line-item-total>10.60</line-item-total>\\n <description>test_desc</description>\\n <discount-amount>0</discount-amount>\\n <product-code>test_code</product-code>\\n <item-quantity>1</item-quantity>\\n <tax-amount>0.60</tax-amount>\\n <tax-rate>6.0</tax-rate>\\n <unit-of-measure>usd</unit-of-measure>\\n <commodity-code>123</commodity-code>\\n <discount-indicator>Y</discount-indicator>\\n <gross-net-indicator>Y</gross-net-indicator>\\n <unit-cost>10.00</unit-cost>\\n </level-3-data-item>\\n </level-3-data>\\n</card-transaction>\",\n \"language\": \"xml\",\n \"name\": \"Auth Only with Level 3 Data - Request\"\n },\n {\n \"code\": \"<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"yes\\\"?>\\n<card-transaction xmlns=\\\"http://ws.plimus.com\\\">\\n <card-transaction-type>AUTH_ONLY</card-transaction-type>\\n <transaction-id>38550322</transaction-id>\\n <recurring-transaction>ECOMMERCE</recurring-transaction>\\n <soft-descriptor>BLS*DescTest</soft-descriptor>\\n <amount>10.60</amount>\\n <usd-amount>10.60</usd-amount>\\n <currency>USD</currency>\\n <avs-response-code>J</avs-response-code>\\n <card-holder-info>\\n <first-name>test first name</first-name>\\n <last-name>test last name</last-name>\\n <country>us</country>\\n <zip>02453</zip>\\n </card-holder-info>\\n <vaulted-shopper-id>19590366</vaulted-shopper-id>\\n <credit-card>\\n <card-last-four-digits>0004</card-last-four-digits>\\n <card-type>VISA</card-type>\\n <bin-category>CONSUMER</bin-category>\\n <bin-number>400551</bin-number>\\n <expiration-month>09</expiration-month>\\n <expiration-year>2023</expiration-year>\\n </credit-card>\\n <level-3-data>\\n <customer-reference-number>1234A</customer-reference-number>\\n <sales-tax-amount>0.6</sales-tax-amount>\\n <freight-amount>0</freight-amount>\\n <duty-amount>0</duty-amount>\\n <destination-zip-code>12345</destination-zip-code>\\n <destination-country-code>us</destination-country-code>\\n <ship-from-zip-code>12345</ship-from-zip-code>\\n <discount-amount>0</discount-amount>\\n <tax-amount>0.6</tax-amount>\\n <tax-rate>6</tax-rate>\\n <transaction-processed-with-l3d-supported-acquirer>true</transaction-processed-with-l3d-supported-acquirer>\\n <level-3-data-item>\\n <line-item-total>10.6</line-item-total>\\n <commodity-code>123</commodity-code>\\n <description>test_desc</description>\\n <discount-amount>0</discount-amount>\\n <discount-indicator>Y</discount-indicator>\\n <gross-net-indicator>Y</gross-net-indicator>\\n <product-code>test_code</product-code>\\n <item-quantity>1</item-quantity>\\n <tax-amount>0.6</tax-amount>\\n <tax-rate>6</tax-rate>\\n <unit-cost>10</unit-cost>\\n <unit-of-measure>usd</unit-of-measure>\\n </level-3-data-item>\\n </level-3-data>\\n <network-transaction-info>\\n <original-network-transaction-id>751005562553365</original-network-transaction-id>\\n <network-transaction-id>751005562553365</network-transaction-id>\\n </network-transaction-info>\\n <processing-info>\\n <processing-status>success</processing-status>\\n <cvv-response-code>NR</cvv-response-code>\\n <authorization-code>092476</authorization-code>\\n <avs-response-code-zip>U</avs-response-code-zip>\\n <avs-response-code-address>U</avs-response-code-address>\\n <avs-response-code-name>U</avs-response-code-name>\\n <network-transaction-id>751005562553365</network-transaction-id>\\n </processing-info>\\n <fraud-result-info>\\n <device-data-collector>N</device-data-collector>\\n </fraud-result-info>\\n</card-transaction>\",\n \"language\": \"xml\",\n \"name\": \"Response\"\n }\n ]\n}\n[/block]\n*Sample [Capture](/v8976-XML/docs/capture) request and response*\n[block:code]\n{\n \"codes\": [\n {\n \"code\": \"<card-transaction xmlns=\\\"http://ws.plimus.com\\\">\\n <card-transaction-type>CAPTURE</card-transaction-type>\\n <transaction-id>38550320</transaction-id>\\n <level-3-data>\\n <customer-reference-number>1234A</customer-reference-number>\\n <sales-tax-amount>0.6</sales-tax-amount>\\n <freight-amount>0</freight-amount>\\n <duty-amount>0</duty-amount>\\n <destination-zip-code>12345</destination-zip-code>\\n <destination-country-code>us</destination-country-code>\\n <ship-from-zip-code>12345</ship-from-zip-code>\\n <discount-amount>0</discount-amount>\\n <tax-amount>0.6</tax-amount>\\n <tax-rate>6.0</tax-rate>\\n <level-3-data-item>\\n <line-item-total>10.60</line-item-total>\\n <description>test_desc</description>\\n <discount-amount>0</discount-amount>\\n <product-code>test_code</product-code>\\n <item-quantity>1</item-quantity>\\n <tax-amount>0.60</tax-amount>\\n <tax-rate>6.0</tax-rate>\\n <unit-of-measure>usd</unit-of-measure>\\n <commodity-code>123</commodity-code>\\n <discount-indicator>Y</discount-indicator>\\n <gross-net-indicator>Y</gross-net-indicator>\\n <unit-cost>10.00</unit-cost>\\n </level-3-data-item>\\n </level-3-data>\\n</card-transaction>\",\n \"language\": \"xml\",\n \"name\": \"Capture with Level 3 Data - Request \"\n },\n {\n \"code\": \"<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"yes\\\"?>\\n<card-transaction xmlns=\\\"http://ws.plimus.com\\\">\\n <card-transaction-type>CAPTURE</card-transaction-type>\\n <transaction-id>38550320</transaction-id>\\n <soft-descriptor>BLS*BS</soft-descriptor>\\n <amount>20.00</amount>\\n <usd-amount>20.00</usd-amount>\\n <open-to-capture>0</open-to-capture>\\n <currency>USD</currency>\\n <transaction-approval-date>01/05/2021</transaction-approval-date>\\n <transaction-approval-time>07:27:48</transaction-approval-time>\\n <card-holder-info>\\n <first-name>John</first-name>\\n <last-name>Blue</last-name>\\n <email>test@bluesnap. com</email>\\n <country>us</country>\\n </card-holder-info>\\n <vaulted-shopper-id>19590364</vaulted-shopper-id>\\n <credit-card>\\n <card-last-four-digits>1111</card-last-four-digits>\\n <card-type>VISA</card-type>\\n <card-sub-type>CREDIT</card-sub-type>\\n <bin-category>CONSUMER</bin-category>\\n <bin-number>411111</bin-number>\\n <card-regulated>Y</card-regulated>\\n <issuing-bank>JPMORGAN CHASE BANK, N.A.</issuing-bank>\\n <expiration-month>7</expiration-month>\\n <expiration-year>2023</expiration-year>\\n <issuing-country-code>us</issuing-country-code>\\n </credit-card>\\n <level-3-data>\\n <customer-reference-number>1234A</customer-reference-number>\\n <sales-tax-amount>0.6</sales-tax-amount>\\n <freight-amount>0</freight-amount>\\n <duty-amount>0</duty-amount>\\n <destination-zip-code>12345</destination-zip-code>\\n <destination-country-code>us</destination-country-code>\\n <ship-from-zip-code>12345</ship-from-zip-code>\\n <discount-amount>0</discount-amount>\\n <tax-amount>0.6</tax-amount>\\n <tax-rate>6.0</tax-rate>\\n <transaction-processed-with-l3d-supported-acquirer>true</transaction-processed-with-l3d-supported-acquirer>\\n <level-3-data-item>\\n <line-item-total>10.60</line-item-total>\\n <commodity-code>123</commodity-code>\\n <description>test_desc</description>\\n <discount-amount>0</discount-amount>\\n <discount-indicator>Y</discount-indicator>\\n <gross-net-indicator>Y</gross-net-indicator>\\n <product-code>test_code</product-code>\\n <item-quantity>1</item-quantity>\\n <tax-amount>0.60</tax-amount>\\n <tax-rate>6.0</tax-rate>\\n <unit-cost>10.00</unit-cost>\\n <unit-of-measure>usd</unit-of-measure>\\n </level-3-data-item>\\n </level-3-data>\\n <network-transaction-info>\\n <original-network-transaction-id>751005553983001</original-network-transaction-id>\\n <network-transaction-id>751005553983001</network-transaction-id>\\n </network-transaction-info>\\n <processing-info>\\n <processing-status>SUCCESS</processing-status>\\n <cvv-response-code>MA</cvv-response-code>\\n <authorization-code>436908</authorization-code>\\n <avs-response-code-zip>U</avs-response-code-zip>\\n <avs-response-code-address>U</avs-response-code-address>\\n <avs-response-code-name>U</avs-response-code-name>\\n <network-transaction-id>751005553983001</network-transaction-id>\\n </processing-info>\\n <fraud-result-info>\\n <device-data-collector>N</device-data-collector>\\n </fraud-result-info>\\n</card-transaction>\",\n \"language\": \"xml\",\n \"name\": \"Response\"\n }\n ]\n}\n[/block]\n# Test Cards\nThe following cards are used for testing of Level 2/3 Data:\n* **Visa:** 4111111111111111 **Exp:** 02/2023 \n* **MasterCard:** 5199701234567892 **Exp:** 02/2023 \n* **Amex (L2 w/ TAA fields):** 340000000000009 **Exp:** 05/2023\n\n<br />\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>","updates":[],"order":21,"isReference":false,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"_id":"622623052699060013831dd5","project":"57336fd5a6a9c40e00e13a0b","version":{"version":"8976-Basics","version_clean":"8976.0.0-Basics","codename":"3.41 Release","is_stable":true,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["622623052699060013831d9c","622623052699060013831d9d","622623052699060013831d9e","6183ed028202aa001610248b","622623052699060013831d9f","622623052699060013831da0","5beb278ac442ab0213f00990","622623052699060013831da1","5c3f542c12c4ac004bc51718","6183ed028202aa001610248f","5df806ccecebde0059f17225","5dfa8a8f340c2b007418eb8a","622623052699060013831da2","5e597199fd2b0200117c2c1c"],"_id":"622623052699060013831de5","project":"57336fd5a6a9c40e00e13a0b","__v":0,"forked_from":"6183ed028202aa00161024e9","createdAt":"2018-04-23T14:36:48.535Z","releaseDate":"2018-04-23T14:36:48.535Z"},"category":{"sync":{"isSync":false,"url":""},"pages":[],"title":"Guides","slug":"topics","order":7,"from_sync":false,"reference":false,"_id":"622623052699060013831da1","version":"622623052699060013831de5","project":"57336fd5a6a9c40e00e13a0b","createdAt":"2015-11-03T20:45:01.593Z","__v":0},"user":"5beb1b96bc2003003ecd645e","createdAt":"2019-04-02T15:50:00.954Z","__v":0,"parentDoc":null}
Level 2/3 Data
Card processing can be categorized into different levels, with each level defined by how much data is required to process the transaction. Enhanced data levels, such as Level 2 and Level 3, require extra information to process the transaction and are most useful for corporations and government agencies that require this type of transaction detail to accurately monitor and track expenses. BlueSnap's Payment API supports Level 2/3 data processing for all currencies, allowing you to expand your business-to-business (B2B) and business-to-government (B2G) sales opportunities.
This guide covers the following topics:
Before you begin
- Level 2/3 Data is supported for select configurations. Contact Merchant Support for more details.
- Do not include the pipe character
|
in a Level 2 or Level 3 data field. Including the character causes fields to be parsed incorrectly. - If you don't know the card type, pass as many
level3Data
properties as you can.- If you pass a property that exceeds the maximum length, BlueSnap truncates the value to meet requirements.
- If BlueSnap detects the card doesn't support Level 2/3 Data, the
level3Data
properties are not sent to the issuer.
- If Level 3 data is sent in both the Auth Only and Capture requests, the Level 3 data from the Auth Only request will be ignored.
- If Level 3 data is sent in the Auth Only request but not sent in the Capture, BlueSnap will include the Level 3 data from the Auth Only request with the Capture request.
- If you manage your own subscriptions, you must send
level3Data
for each charge.
Amex
Level 2
Level 2 with TAA (Transaction Advice Addendum)
Level 2 with TAA is an Amex-specific level that contains item data (such as item description and quantity) in addition to Level 2 fields. For more details, refer to Required properties for Amex.
Required properties
Required for MasterCard
Required for MasterCard for Level 2 Data
Only the following are required for Level 2 Data:
customerReferenceNumber
/customer‑reference‑number
salesTaxAmount
/sales‑tax‑amount
Required for MasterCard for Level 3 Data
The following table outlines the required properties for Level 3 Data.
Hierarchy | Property (JSON XML) | Level 3 Details |
---|---|---|
Order level |
For details regarding the specifics of a property, refer to: level3Data (JSON) or level-3-data (XML) | |
customerReferenceNumber customer‑reference‑number |
Mandatory — If the value we receive is all spaces, we replace the value with NA. | |
salesTaxAmount sales‑tax‑amount |
Mandatory — If the value we receive is all spaces, we replace the value with all zeros. | |
freightAmount freight‑amount |
Not mandatory — However, if a value is sent and the value we receive is all spaces, we replace the value with all zeros. | |
dutyAmount duty‑amount |
Not mandatory — However, if a value is sent and the value we receive is all spaces, we replace the value with all zeros. | |
destinationZipCode destination‑zip‑code |
Not mandatory — However, if a value is sent and the value we receive is all spaces, we replace the value with 0. | |
destinationCountryCode destination‑country‑code |
Not mandatory — However, if a value is sent and the value is not valid, we replace the value with all spaces. | |
shipFromZipCode ship‑from‑zip‑code |
Not mandatory — However, if a value is sent and the value we receive is all spaces, we replace the value with 0. | |
discountAmount discount‑amount |
Not mandatory — However, if a value is sent and the value we receive is not a valid value (numeric 0–9), we replace the value with all zeros. | |
taxAmount tax‑amount |
Not mandatory — However, if the value is sent and it is not valid, we replace the value with all zeros. Also, if any value is sent, even all zeros, Tax Rate is required. | |
taxRate tax‑rate |
Mandatory if the Tax Amount is present — If the value we receive is not a valid value, we replace the value with all zeros. | |
level3DataItem level‑3‑data‑item |
Mandatory — Container for the data item properties shown below. See details below. | |
Item level |
The following are the required data item properties. For details regarding the specifics of a property, refer to: level3DataItems (JSON) or level‑3‑data‑item (XML) Note: You may pass the following properties for each item. A maximum of 97 line items is supported. If you send more than 97 line items in the request, the first 97 will be accepted and the rest will be ignored. |
|
lineItemTotal
line‑item‑total |
Mandatory — If the value we receive is not a valid value (numeric 0–9), we replace the value with 1. | |
commodityCode
commodity‑code |
Not mandatory | |
description
description |
Mandatory — If the value we receive is all spaces or all zeros, we replace the value with NA. | |
discountAmount
discount‑amount |
Not mandatory — However, if a value is sent and the value we receive is not a valid value (numeric 0–9), we replace the value with all zeros. | |
discountIndicator
discount‑indicator |
Not mandatory — However, if the value is not Y or N, we replace the value with N. | |
grossNetIndicator
gross‑net‑indicator |
Not mandatory — However, if the value is not Y or N, we replace the value with N. | |
productCode
product‑code |
Mandatory — If the value we receive is all spaces or all zeros, we replace the value with NA. | |
itemQuantity
item‑quantity |
Mandatory — If the value we receive is all spaces or all zeros, we replace the value with 1. | |
taxAmount
tax‑amount |
Not mandatory — However, if the value is sent and it is not valid, we replace the value with all zeros. Also, if any value is sent, even all zeros, Tax Rate is required. | |
taxRate
tax‑rate |
Mandatory if the Tax Amount is present — If the value we receive is not a valid value, we replace the value with all zeros. | |
taxType
tax‑type |
Not mandatory — However, if a value is sent and the value we receive is not a valid value, we replace the value with all spaces. | |
unitOfMeasure
unit‑of‑measure |
Not mandatory — However, if the value we receive is all spaces or all zeros, we replace the value with NA. |
Hierarchy | Property (JSON XML) | Level 3 Details |
---|---|---|
Order level |
For details regarding the specifics of a property, refer to: level3Data (JSON) or level-3-data (XML) | |
customerReferenceNumber customer‑reference‑number |
Not mandatory | |
salesTaxAmount sales‑tax‑amount |
Not mandatory | |
freightAmount freight‑amount |
Not mandatory — However, if a value is sent and the value we receive is all spaces, we replace the value with all zeros. | |
dutyAmount duty‑amount |
Not mandatory — However, if a value is sent and the value we receive is all spaces, we replace the value with all zeros. | |
destinationZipCode destination‑zip‑code |
Not mandatory — We do not change the value. | |
destinationCountryCode destination‑country‑code |
Not mandatory — However, if a value is sent and the value we receive is not a valid value, we replace the value with all spaces. | |
shipFromZipCode ship‑from‑zip‑code |
Not mandatory — We do not change the value. | |
discountAmount discount‑amount |
Not mandatory — However, if a value is sent and the value we receive is not a valid value (numeric 0–9), we replace the value with all zeros. | |
taxAmount tax‑amount |
Not mandatory — However, if the value is sent and it is not valid, we replace the value with all zeros. Also, if any value is sent, even all zeros, Tax Rate is required. | |
taxRate tax‑rate |
Mandatory if the Tax Amount is present — If the value we receive is not a valid value, we replace the value with all zeros. | |
level3DataItem level‑3‑data‑item |
Mandatory — Container for the data item properties shown below. See details below. | |
Item level |
The following are the required data item properties. For details regarding the specifics of a property, refer to: level3DataItems (JSON) or level‑3‑data‑item (XML) Note: You may pass the following properties for each item. A maximum of 97 line items is supported. If you send more than 97 line items in the request, the first 97 will be accepted and the rest will be ignored. |
|
lineItemTotal
line‑item‑total |
Mandatory — If the value we receive is not a valid value (numeric 0–9), we replace the value with 1. | |
commodityCode
commodity‑code |
Mandatory — If the value we receive is all spaces or all zeros, we replace the value with 00101. | |
description
description |
Mandatory — If the value we receive is all spaces or all zeros, we replace the value with NA. | |
discountAmount
discount‑amount |
Not mandatory — However, if a value is sent and the value we receive is not a valid value (numeric 0–9), we replace the value with all zeros. | |
productCode
product‑code |
Mandatory — If the value we receive is all spaces or all zeros, we replace the value with NA. | |
itemQuantity
item‑quantity |
Mandatory — If the value we receive is all spaces or all zeros, we replace the value with 1. | |
taxAmount
tax‑amount |
Not mandatory — However, if the value is sent and it is not valid, we replace the value with all zeros. Also, if any value is sent, even all zeros, Tax Rate is required. | |
taxRate
tax‑rate |
Mandatory if the Tax Amount is present — If the value we receive is not a valid value, we replace the value with all zeros. | |
unitCost
unit‑cost |
Mandatory — If the value we receive is all spaces or all zeros, we replace the value with 1. | |
unitOfMeasure
unit‑of‑measure |
Not mandatory — If the value we receive is all spaces or all zeros, we replace the value with NA. |
Hierarchy | Property (JSON XML) | Amex Level 2 with TAA |
---|---|---|
Order level |
For details regarding the specifics of a property, refer to: level3Data (JSON) or level-3-data (XML) | |
customerReferenceNumber customer‑reference‑number |
Mandatory | |
salesTaxAmount sales‑tax‑amount |
Mandatory | |
destinationZipCode destination‑zip‑code |
Optional | |
level3DataItem level‑3‑data‑item |
Mandatory — Container for the data item properties shown below. See details below. | |
Item level |
The following are the required data item properties. For details regarding the specifics of a property, refer to: level3DataItems (JSON) or level‑3‑data‑item (XML) Note: You may pass the following properties for each item. A maximum of 97 line items is supported. If you send more than 97 line items in the request, the first 97 will be accepted and the rest will be ignored. |
|
lineItemTotal
line‑item‑total |
Optional | |
description
description |
Mandatory | |
itemQuantity
item‑quantity |
Optional |
Sending Level 3 data examples
Level 3 data is supported in Auth Capture, as well as in the Auth Only and Capture requests.
JSON examples
Sample Auth Capture request and response
{
"cardTransactionType": "AUTH_CAPTURE",
"softDescriptor": "DescTest",
"amount": 10.60,
"currency": "USD",
"cardHolderInfo": {
"firstName": "test first name",
"lastName": "test last name",
"zip": "123456"
},
"creditCard": {
"cardNumber": "4005 5192 0000 0004",
"securityCode": "111",
"expirationMonth": "09",
"expirationYear": 2023
},
"level3Data": {
"customerReferenceNumber": "1234A",
"salesTaxAmount": 0.6,
"freightAmount": 0,
"dutyAmount": 0,
"destinationZipCode": "12345",
"destinationCountryCode": "us",
"shipFromZipCode": "12345",
"discountAmount": 0,
"taxAmount": 0.6,
"taxRate": 6.0,
"level3DataItems": [{
"lineItemTotal": 10.00,
"description": "test_desc",
"discountAmount": 0,
"productCode": "test_code",
"itemQuantity": 1.0,
"taxAmount": 0.60,
"taxRate": 6.0,
"unitOfMeasure": "lb",
"commodityCode": "123",
"discountIndicator": "Y",
"grossNetIndicator": "Y",
"taxType": "test",
"unitCost": 10.00
}]
}
}
{
"cardTransactionType": "AUTH_CAPTURE",
"vendorsInfo": {},
"transactionId": "1015836179",
"softDescriptor": "BLS*DescTest",
"amount": 10.60,
"currency": "USD",
"avsResponseCode": "G",
"cardHolderInfo": {
"firstName": "test first name",
"lastName": "test last name",
"zip": "123456"
},
"vaultedShopperId": 22391925,
"creditCard": {
"cardLastFourDigits": "0004",
"cardType": "VISA",
"cardSubType": "CREDIT",
"cardCategory": "CORPORATE T&E"
},
"level3Data": {
"customerReferenceNumber": "1234A",
"salesTaxAmount": 0.6,
"freightAmount": 0,
"dutyAmount": 0,
"destinationZipCode": "12345",
"destinationCountryCode": "us",
"shipFromZipCode": "12345",
"discountAmount": 0,
"taxAmount": 0.6,
"taxRate": 6,
"transactionProcessedWithL3dSupportedAcquirer": true,
"level3DataItems": [{
"lineItemTotal": 10,
"commodityCode": "123",
"description": "test_desc",
"discountAmount": 0,
"discountIndicator": "Y",
"grossNetIndicator": "Y",
"productCode": "test_code",
"itemQuantity": 1,
"taxAmount": 0.6,
"taxRate": 6,
"taxType": "test",
"unitCost": 10,
"unitOfMeasure": "lb"
}]
},
"processingInfo": {
"processingStatus": "success",
"cvvResponseCode": "NR",
"avsResponseCodeZip": "U",
"avsResponseCodeAddress": "U",
"avsResponseCodeName": "U"
},
"fraudResultInfo": {
"deviceDataCollector": "N"
}
}
Sample Auth Only request and response
{
"cardTransactionType": "AUTH_ONLY",
"softDescriptor": "DescTest",
"amount": 10,
"currency": "USD",
"cardHolderInfo": {
"firstName": "test first name",
"lastName": "test last name"
},
"creditCard": {
"cardNumber": 4012000033330026,
"securityCode": 111,
"cardType": "VISA",
"expirationMonth": "09",
"expirationYear": 2023
},
"level3Data": {
"customerReferenceNumber": "test",
"salesTaxAmount": 87,
"freightAmount": 10,
"dutyAmount": 1,
"destinationZipCode": "12345",
"destinationCountryCode": "us",
"shipFromZipCode": "12345",
"discountAmount": 10,
"vatTaxAmount": 3,
"vatTaxRate": 3,
"level3DataItems": [
{
"lineItemTotal": 12377,
"itemCommodityCode": "123",
"description": "test_desc",
"discountAmount": 1,
"discountIndicator": "Y",
"grossNetIndicator": "Y",
"productCode": "test_code",
"itemQuantity": 10,
"vatTaxAmount": 3,
"vatTaxRate": 3,
"taxTypeApplied": "test",
"unitCost": 7,
"unitOfMeasure": "usd"
}
]
}
}
{
"cardTransactionType": "AUTH_ONLY",
"transactionId": "38550326",
"softDescriptor": "BLS*DescTest",
"amount": 10.0,
"usdAmount": 10.0,
"currency": "USD",
"avsResponseCode": "G",
"cardHolderInfo": {
"firstName": "test first name",
"lastName": "test last name"
},
"vaultedShopperId": 19590368,
"creditCard": {
"cardLastFourDigits": "0026",
"cardType": "VISA",
"binCategory": "CONSUMER",
"binNumber": "401200",
"expirationMonth": "09",
"expirationYear": "2023"
},
"level3Data": {
"customerReferenceNumber": "test",
"salesTaxAmount": 87,
"freightAmount": 10,
"dutyAmount": 1,
"destinationZipCode": "12345",
"destinationCountryCode": "us",
"shipFromZipCode": "12345",
"discountAmount": 10,
"transactionProcessedWithL3DSupportedAcquirer": true,
"level3DataItems": [
{
"lineItemTotal": 12377,
"description": "test_desc",
"discountAmount": 1,
"discountIndicator": "Y",
"grossNetIndicator": "Y",
"productCode": "test_code",
"itemQuantity": 10,
"unitCost": 7,
"unitOfMeasure": "usd"
}
]
},
"networkTransactionInfo": {
"originalNetworkTransactionId": "751005569293609",
"networkTransactionId": "751005569293609"
},
"processingInfo": {
"processingStatus": "success",
"cvvResponseCode": "MA",
"authorizationCode": "055099",
"avsResponseCodeZip": "U",
"avsResponseCodeAddress": "U",
"avsResponseCodeName": "U",
"networkTransactionId": "751005569293609"
},
"fraudResultInfo": {
"deviceDataCollector": "N"
}
}
Sample Capture request and response
{
"cardTransactionType": "CAPTURE",
"transactionId": "38550328",
"level3Data": {
"customerReferenceNumber": "test",
"salesTaxAmount": 87,
"freightAmount": 10,
"dutyAmount": 1,
"destinationZipCode": "12345",
"destinationCountryCode": "us",
"shipFromZipCode": "12345",
"discountAmount": 10,
"vatTaxAmount": 3,
"vatTaxRate": 3,
"level3DataItems": [
{
"lineItemTotal": 12377,
"itemCommodityCode": "123",
"description": "test_desc",
"discountAmount": 1,
"discountIndicator": "Y",
"grossNetIndicator": "Y",
"productCode": "test_code",
"itemQuantity": 10,
"vatTaxAmount": 3,
"vatTaxRate": 3,
"taxTypeApplied": "test",
"unitCost": 7,
"unitOfMeasure": "usd"
}
]
}
}
{
"cardTransactionType": "CAPTURE",
"transactionId": "38550328",
"softDescriptor": "BLS*BS",
"amount": 20.0,
"usdAmount": 20.0,
"openToCapture": 0,
"currency": "USD",
"transactionApprovalDate": "01/05/2021",
"transactionApprovalTime": "07:58:07",
"cardHolderInfo": {
"firstName": "John",
"lastName": "Blue",
"email": "[email protected] com",
"country": "us"
},
"vaultedShopperId": 19590370,
"creditCard": {
"cardLastFourDigits": "1111",
"cardType": "VISA",
"cardSubType": "CREDIT",
"binCategory": "CONSUMER",
"binNumber": "411111",
"cardRegulated": "Y",
"issuingBank": "JPMORGAN CHASE BANK, N.A.",
"expirationMonth": "7",
"expirationYear": "2023",
"issuingCountryCode": "us"
},
"level3Data": {
"customerReferenceNumber": "test",
"salesTaxAmount": 87,
"freightAmount": 10,
"dutyAmount": 1,
"destinationZipCode": "12345",
"destinationCountryCode": "us",
"shipFromZipCode": "12345",
"discountAmount": 10,
"transactionProcessedWithL3DSupportedAcquirer": true,
"level3DataItems": [
{
"lineItemTotal": 12377,
"description": "test_desc",
"discountAmount": 1,
"discountIndicator": "Y",
"grossNetIndicator": "Y",
"productCode": "test_code",
"itemQuantity": 10,
"unitCost": 7,
"unitOfMeasure": "usd"
}
]
},
"networkTransactionInfo": {
"originalNetworkTransactionId": "751005573403769",
"networkTransactionId": "751005573403769"
},
"processingInfo": {
"processingStatus": "SUCCESS",
"cvvResponseCode": "MA",
"authorizationCode": "772239",
"avsResponseCodeZip": "U",
"avsResponseCodeAddress": "U",
"avsResponseCodeName": "U",
"networkTransactionId": "751005573403769"
},
"fraudResultInfo": {
"deviceDataCollector": "N"
}
}
XML examples
Sample Auth Capture request and response
<card-transaction xmlns="http://ws.plimus.com">
<card-transaction-type>AUTH_CAPTURE</card-transaction-type>
<soft-descriptor>MYSTORE</soft-descriptor>
<amount>10.60</amount>
<currency>USD</currency>
<card-holder-info>
<first-name>test first name</first-name>
<last-name>test last name</last-name>
<zip>02453</zip>
<country>us</country>
</card-holder-info>
<credit-card>
<card-number>4005 5192 0000 0004</card-number>
<security-code>111</security-code>
<expiration-month>09</expiration-month>
<expiration-year>2023</expiration-year>
</credit-card>
<level-3-data>
<customer-reference-number>1234A</customer-reference-number>
<sales-tax-amount>0.6</sales-tax-amount>
<freight-amount>0</freight-amount>
<duty-amount>0</duty-amount>
<destination-zip-code>12345</destination-zip-code>
<destination-country-code>us</destination-country-code>
<ship-from-zip-code>12345</ship-from-zip-code>
<discount-amount>0</discount-amount>
<tax-amount>0.6</tax-amount>
<tax-rate>6.0</tax-rate>
<level-3-data-item>
<line-item-total>10.60</line-item-total>
<commodity-code>123</commodity-code>
<description>test_desc</description>
<discount-amount>0</discount-amount>
<discount-indicator>Y</discount-indicator>
<product-code>test_code</product-code>
<item-quantity>1.0</item-quantity>
<tax-amount>0.60</tax-amount>
<tax-rate>6.0</tax-rate>
<unit-of-measure>usd</unit-of-measure>
<gross-net-indicator>Y</gross-net-indicator>
<unit-cost>10.00</unit-cost>
</level-3-data-item>
</level-3-data>
</card-transaction>
<card-transaction xmlns="http://ws.plimus.com">
<card-transaction-type>AUTH_CAPTURE</card-transaction-type>
<transaction-id>1020736769</transaction-id>
<soft-descriptor>BLS*MYSTORE</soft-descriptor>
<amount>10.60</amount>
<usd-amount>10.60</usd-amount>
<currency>USD</currency>
<avs-response-code>J</avs-response-code>
<card-holder-info>
<first-name>test first name</first-name>
<last-name>test last name</last-name>
<country>us</country>
<zip>02453</zip>
</card-holder-info>
<vaulted-shopper-id>24122703</vaulted-shopper-id>
<credit-card>
<card-last-four-digits>0004</card-last-four-digits>
<card-type>VISA</card-type>
<card-sub-type>CREDIT</card-sub-type>
<card-category>CORPORATE T&E</card-category>
<bin-category>COMMERCIAL</bin-category>
<card-regulated>N</card-regulated>
<issuing-country-code>us</issuing-country-code>
</credit-card>
<level-3-data>
<customer-reference-number>1234A</customer-reference-number>
<sales-tax-amount>0.6</sales-tax-amount>
<freight-amount>0</freight-amount>
<duty-amount>0</duty-amount>
<destination-zip-code>12345</destination-zip-code>
<destination-country-code>us</destination-country-code>
<ship-from-zip-code>12345</ship-from-zip-code>
<discount-amount>0</discount-amount>
<tax-amount>0.6</tax-amount>
<tax-rate>6</tax-rate>
<transaction-processed-with-l3d-supported-acquirer>true</transaction-processed-with-l3d-supported-acquirer>
<level-3-data-item>
<line-item-total>10.6</line-item-total>
<commodity-code>123</commodity-code>
<description>test_desc</description>
<discount-amount>0</discount-amount>
<discount-indicator>Y</discount-indicator>
<gross-net-indicator>Y</gross-net-indicator>
<product-code>test_code</product-code>
<item-quantity>1</item-quantity>
<tax-amount>0.6</tax-amount>
<tax-rate>6</tax-rate>
<unit-cost>10</unit-cost>
<unit-of-measure>usd</unit-of-measure>
</level-3-data-item>
</level-3-data>
<processing-info>
<processing-status>success</processing-status>
<cvv-response-code>NR</cvv-response-code>
<avs-response-code-zip>U</avs-response-code-zip>
<avs-response-code-address>U</avs-response-code-address>
<avs-response-code-name>U</avs-response-code-name>
</processing-info>
<fraud-result-info>
<device-data-collector>N</device-data-collector>
</fraud-result-info>
</card-transaction>
Sample Auth Only request and response
<card-transaction xmlns="http://ws.plimus.com">
<card-transaction-type>AUTH_ONLY</card-transaction-type>
<soft-descriptor>DescTest</soft-descriptor>
<amount>10.60</amount>
<currency>USD</currency>
<card-holder-info>
<first-name>test first name</first-name>
<last-name>test last name</last-name>
<zip>02453</zip>
<country>us</country>
</card-holder-info>
<credit-card>
<card-number>4005 5192 0000 0004</card-number>
<security-code>111</security-code>
<expiration-month>09</expiration-month>
<expiration-year>2023</expiration-year>
</credit-card>
<level-3-data>
<customer-reference-number>1234A</customer-reference-number>
<sales-tax-amount>0.6</sales-tax-amount>
<freight-amount>0</freight-amount>
<duty-amount>0</duty-amount>
<destination-zip-code>12345</destination-zip-code>
<destination-country-code>us</destination-country-code>
<ship-from-zip-code>12345</ship-from-zip-code>
<discount-amount>0</discount-amount>
<tax-amount>0.6</tax-amount>
<tax-rate>6.0</tax-rate>
<level-3-data-item>
<line-item-total>10.60</line-item-total>
<description>test_desc</description>
<discount-amount>0</discount-amount>
<product-code>test_code</product-code>
<item-quantity>1</item-quantity>
<tax-amount>0.60</tax-amount>
<tax-rate>6.0</tax-rate>
<unit-of-measure>usd</unit-of-measure>
<commodity-code>123</commodity-code>
<discount-indicator>Y</discount-indicator>
<gross-net-indicator>Y</gross-net-indicator>
<unit-cost>10.00</unit-cost>
</level-3-data-item>
</level-3-data>
</card-transaction>
<card-transaction xmlns="http://ws.plimus.com">
<card-transaction-type>AUTH_ONLY</card-transaction-type>
<transaction-id>38550322</transaction-id>
<recurring-transaction>ECOMMERCE</recurring-transaction>
<soft-descriptor>BLS*DescTest</soft-descriptor>
<amount>10.60</amount>
<usd-amount>10.60</usd-amount>
<currency>USD</currency>
<avs-response-code>J</avs-response-code>
<card-holder-info>
<first-name>test first name</first-name>
<last-name>test last name</last-name>
<country>us</country>
<zip>02453</zip>
</card-holder-info>
<vaulted-shopper-id>19590366</vaulted-shopper-id>
<credit-card>
<card-last-four-digits>0004</card-last-four-digits>
<card-type>VISA</card-type>
<bin-category>CONSUMER</bin-category>
<bin-number>400551</bin-number>
<expiration-month>09</expiration-month>
<expiration-year>2023</expiration-year>
</credit-card>
<level-3-data>
<customer-reference-number>1234A</customer-reference-number>
<sales-tax-amount>0.6</sales-tax-amount>
<freight-amount>0</freight-amount>
<duty-amount>0</duty-amount>
<destination-zip-code>12345</destination-zip-code>
<destination-country-code>us</destination-country-code>
<ship-from-zip-code>12345</ship-from-zip-code>
<discount-amount>0</discount-amount>
<tax-amount>0.6</tax-amount>
<tax-rate>6</tax-rate>
<transaction-processed-with-l3d-supported-acquirer>true</transaction-processed-with-l3d-supported-acquirer>
<level-3-data-item>
<line-item-total>10.6</line-item-total>
<commodity-code>123</commodity-code>
<description>test_desc</description>
<discount-amount>0</discount-amount>
<discount-indicator>Y</discount-indicator>
<gross-net-indicator>Y</gross-net-indicator>
<product-code>test_code</product-code>
<item-quantity>1</item-quantity>
<tax-amount>0.6</tax-amount>
<tax-rate>6</tax-rate>
<unit-cost>10</unit-cost>
<unit-of-measure>usd</unit-of-measure>
</level-3-data-item>
</level-3-data>
<network-transaction-info>
<original-network-transaction-id>751005562553365</original-network-transaction-id>
<network-transaction-id>751005562553365</network-transaction-id>
</network-transaction-info>
<processing-info>
<processing-status>success</processing-status>
<cvv-response-code>NR</cvv-response-code>
<authorization-code>092476</authorization-code>
<avs-response-code-zip>U</avs-response-code-zip>
<avs-response-code-address>U</avs-response-code-address>
<avs-response-code-name>U</avs-response-code-name>
<network-transaction-id>751005562553365</network-transaction-id>
</processing-info>
<fraud-result-info>
<device-data-collector>N</device-data-collector>
</fraud-result-info>
</card-transaction>
Sample Capture request and response
<card-transaction xmlns="http://ws.plimus.com">
<card-transaction-type>CAPTURE</card-transaction-type>
<transaction-id>38550320</transaction-id>
<level-3-data>
<customer-reference-number>1234A</customer-reference-number>
<sales-tax-amount>0.6</sales-tax-amount>
<freight-amount>0</freight-amount>
<duty-amount>0</duty-amount>
<destination-zip-code>12345</destination-zip-code>
<destination-country-code>us</destination-country-code>
<ship-from-zip-code>12345</ship-from-zip-code>
<discount-amount>0</discount-amount>
<tax-amount>0.6</tax-amount>
<tax-rate>6.0</tax-rate>
<level-3-data-item>
<line-item-total>10.60</line-item-total>
<description>test_desc</description>
<discount-amount>0</discount-amount>
<product-code>test_code</product-code>
<item-quantity>1</item-quantity>
<tax-amount>0.60</tax-amount>
<tax-rate>6.0</tax-rate>
<unit-of-measure>usd</unit-of-measure>
<commodity-code>123</commodity-code>
<discount-indicator>Y</discount-indicator>
<gross-net-indicator>Y</gross-net-indicator>
<unit-cost>10.00</unit-cost>
</level-3-data-item>
</level-3-data>
</card-transaction>
<card-transaction xmlns="http://ws.plimus.com">
<card-transaction-type>CAPTURE</card-transaction-type>
<transaction-id>38550320</transaction-id>
<soft-descriptor>BLS*BS</soft-descriptor>
<amount>20.00</amount>
<usd-amount>20.00</usd-amount>
<open-to-capture>0</open-to-capture>
<currency>USD</currency>
<transaction-approval-date>01/05/2021</transaction-approval-date>
<transaction-approval-time>07:27:48</transaction-approval-time>
<card-holder-info>
<first-name>John</first-name>
<last-name>Blue</last-name>
<email>test@bluesnap. com</email>
<country>us</country>
</card-holder-info>
<vaulted-shopper-id>19590364</vaulted-shopper-id>
<credit-card>
<card-last-four-digits>1111</card-last-four-digits>
<card-type>VISA</card-type>
<card-sub-type>CREDIT</card-sub-type>
<bin-category>CONSUMER</bin-category>
<bin-number>411111</bin-number>
<card-regulated>Y</card-regulated>
<issuing-bank>JPMORGAN CHASE BANK, N.A.</issuing-bank>
<expiration-month>7</expiration-month>
<expiration-year>2023</expiration-year>
<issuing-country-code>us</issuing-country-code>
</credit-card>
<level-3-data>
<customer-reference-number>1234A</customer-reference-number>
<sales-tax-amount>0.6</sales-tax-amount>
<freight-amount>0</freight-amount>
<duty-amount>0</duty-amount>
<destination-zip-code>12345</destination-zip-code>
<destination-country-code>us</destination-country-code>
<ship-from-zip-code>12345</ship-from-zip-code>
<discount-amount>0</discount-amount>
<tax-amount>0.6</tax-amount>
<tax-rate>6.0</tax-rate>
<transaction-processed-with-l3d-supported-acquirer>true</transaction-processed-with-l3d-supported-acquirer>
<level-3-data-item>
<line-item-total>10.60</line-item-total>
<commodity-code>123</commodity-code>
<description>test_desc</description>
<discount-amount>0</discount-amount>
<discount-indicator>Y</discount-indicator>
<gross-net-indicator>Y</gross-net-indicator>
<product-code>test_code</product-code>
<item-quantity>1</item-quantity>
<tax-amount>0.60</tax-amount>
<tax-rate>6.0</tax-rate>
<unit-cost>10.00</unit-cost>
<unit-of-measure>usd</unit-of-measure>
</level-3-data-item>
</level-3-data>
<network-transaction-info>
<original-network-transaction-id>751005553983001</original-network-transaction-id>
<network-transaction-id>751005553983001</network-transaction-id>
</network-transaction-info>
<processing-info>
<processing-status>SUCCESS</processing-status>
<cvv-response-code>MA</cvv-response-code>
<authorization-code>436908</authorization-code>
<avs-response-code-zip>U</avs-response-code-zip>
<avs-response-code-address>U</avs-response-code-address>
<avs-response-code-name>U</avs-response-code-name>
<network-transaction-id>751005553983001</network-transaction-id>
</processing-info>
<fraud-result-info>
<device-data-collector>N</device-data-collector>
</fraud-result-info>
</card-transaction>