Level 3 data

United States

Understand Level 3 data

Level 3 data is recommended for large corporations processing most B2B (business-to-business) and B2G (business-to-government) transactions. These transactions require providing the most data at the time of the transaction. Only Mastercard® and Visa® qualify for Level 3 data processing.


See the following endpoint when configuring L3 data: Create a charge.

Collected data

In addition to tax amounts and customer codes (Level 2 data), Level 3 data includes item information such as product, code, item quantity, description, unit of measure, unit cost, and more. Different data is collected based on whether the card is Mastercard or Visa. You can add default values for Level 3 data when you set up purchasing card payments on the web dashboard. This data is auto-populated during the transaction.

Issuer requirements

In addition to Level 2 data requirements, businesses interested in Level 3 data processing need to submit additional details. For example, Visa requires companies to have between 20,000 and 1 million in e-commerce transactions. These accounts are attractive to fraudsters and identity thieves, making them some of the most expensive credit cards to accept.

Level 3 data requirements

The following fields are part of the Level 3 data collected for Mastercard and Visa, in addition to the Level 2 fields:

service_codestringService code is extracted from the track data. This is required for swiped transactions and is mandatory for all non-keyed transactions.
Note: Track data is information encoded within the magnetic strip on the back of a credit card that is read by the electronic reader within the terminal or point-of-sale (POS) system.
magnetic_Stripe_IndbooleanSet to true for magnetic stripe-swiped transactions.
level3_line_itemsarray of objectsList of Level 3 line items. See the following table.

Level 3 line items requirements

The following fields are part of the Level 3-line item parameters:

item_descriptionstringItem description for Level 3 line item. Format: Cannot be all spaces or 0s (zeros). The last four digits are implied decimal places, for example: 20.0000.
product_codestringRequired for Mastercard and Visa. Indicates a product or universal product code (UPC). Format: Cannot be all spaces.
unit_costint64Unit cost for Level 3 line item. Format: Visa - Not all spaces or zeros (0s).
quantitydecimalItem quantity. Format: Not all spaces or zeros (0s). Required for reduced interchange. Last four digits are considered decimal places.
discount_amountint64Discount amount applied to level 3-line items. For Visa level 3, this cannot be all zeroes if a discount exists. Also, the last two digits are implied decimal places. Otherwise, it must be zero (0).
unit_of_measurestringRequired for both Mastercard and Visa for reduced interchange. See Units of measurement codes.
commodity_codestringRequired for Visa. Indicates the classification of items purchased.

Credit card parameters

The following table provides parameters for a specific credit card:

Card issuerDescription
Mastercard- item_description (required) - product_code (required) - unit_of_measure (required) - quantity (required) - unit_cost (required)
Visa- commodity_code (required) - product_code (required) - unit_of_measure (required) - item_description (required) - quantity (required) - unit_cost (required)