Level 2/3 processing

Send Level 2/3 data on payins

Level 2 and Level 3 data is submitted with a business or commercial card to provide additional benefit to the cardholder through enhanced payment information, and benefits the merchant with lower interchange rates assessed by the card networks (Visa and Mastercard).

Where practical, it is highly recommended that Level 2 and Level 3 data be included in a payin request.

🚧

Visa Commercial Enhances Data Program (CEDP) requirements

Visa is launching a new interchange framework to qualify for commercial card interchange to go into effect October 17, 2025. See the Visa Commercial Enhanced Data Program (CEDP) 2025/2026 transition guide for further details.

Level 2/3 fields


The following fields can be provided in the payin config request.
Note: Only some fields are required for Level 2 qualification.

Field NameDescriptionTypeVisa / Mastercard DifferencesLevel 2Level 3
tax_amountThe sales tax included in the total payment amount associated with the item(s) being purchased, in minor units.

Should be the sum of sales tax within the line items.

For example, 1000 is 10.00 USD.
IntegerVisa: should be 0 if tax exempt

Mastercard: sum of line item taxes
shipping_amountThe freight or shipping amount included in the total payment amount, in minor units.

For example, 1000 is 10.00 USD.
Integer$0 allowed if no shipping for both
order_numberThe purchase order number.

Cannot be static.
StringRequired for both; must be unique.
shipping_countryThe 2-digit country code for the delivery address of the item(s) being purchased.

Find country codes here: https://www.iso.org/obp
StringVisa: Only required if shipping present

Mastercard: Required
shipping_postal_codePostal code or ZIP code for the delivery address of the item(s) being purchased. This field can be identical to the shipping_from_postal_code if the customer is present and takes immediate possession of the item(s).StringVisa: Only required if shipping present

Mastercard: Required
shipping_from_postal_codePostal code or ZIP code of the address the item(s) being purchased are shipped from.StringVisa: Only required if shipping present

Mastercard: Required
commodity_codeThe commodity code of the item(s) being purchased. 1st 4 digits of family code.

Full list of options can be found here.
StringRequired for Level 3 on both
line_items (array)The details on the item(s) being purchased.Array

Line Item Fields

Note: All fields are required for Level 3 qualification.

Field NameDescriptionTypeVisa / Mastercard Differences
product_codeThe merchant defined product code of the item being purchased.

Cannot be static.
StringVisa: ≤12 chars

Mastercard: ≤12 chars
commodity_codeThe commodity code of the item being purchased. 4-12 digit commodity code recommended.

Full list of options can be found here .
StringRequired for Level 3 on both
descriptionThe description of the item being purchased.

Cannot be static.
StringRequired for Level 3 on both
unit_amountThe amount of the item being purchased, in minor units.

For example, 1000 is 10.00 USD.
IntegerRequired for Level 3 on both
quantityThe quantity of the item.StringRequired for Level 3 on both
tax_amountThe sales tax on the item being purchased, in minor units.

If tax exempt, tax amount should be set to 0.

For example, 1000 is 10.00 USD.
IntegerRequired for Level 3 on both
tax_rateThe tax rate, in per cent mille.

If tax exempt, tax rate should be set to 0.

For example, 1000 is 1%.
IntegerRequired for Level 3 on both

📘

Additional fees not associated with taxes or shipping

For any additional fees not associated with taxes or shipping, please account for this amount by adding an additional line item to the payload.

See Level 2/3 API specs for additional details.


Example


Payment: $1,030.00 total, 4 line items, Georgia sales tax of 4%, shipping $12.00, and other fees $30.00

ItemUnit PriceQuantitySubtotalTax (4%)Line Item Total
Couch$2002$400$16$416
Office Chair$2501$250$10$260
Sofa$3001$300$12$312
Other Fees$301$30$0$30

Arithmetic validation

Subtotal: $400 + $250 + $300 = $950

Tax: $16 + $10 + $12 = $38

Shipping: $12

Convenience Fee: $30

Total: $950 + $38 + $12 = $1030

Example payload

{
    "tax_amount": 3800,
    "shipping_amount": 1200,
    "order_number": "INV-20250527-001",
    "shipping_country": "US",
    "shipping_postal_code": "30303",
    "shipping_from_postal_code": "30303",
    "commodity_code": "3374",
    "line_items": [
    {
        "product_code": "COUCH001",
        "commodity_code": "33712",
        "description": "Couch",
        "unit_amount": 20000,
        "quantity": 2,
        "tax_amount": 1600,
        "tax_rate": 4000
    },
    {
        "product_code": "CHAIR001",
        "commodity_code": "33721",
        "description": "Office Chair",
        "unit_amount": 25000,
        "quantity": 1,
        "tax_amount": 1000,
        "tax_rate": 4000
    },
    {
        "product_code": "SOFA001",
        "commodity_code": "33712",
        "description": "Sofa",
        "unit_amount": 30000,
        "quantity": 1,
        "tax_amount": 1200,
        "tax_rate": 4000
    },
    {
        "product_code": "FEES001",
        "commodity_code": "33712",
        "description": "Other Fees",
        "unit_amount": 3000,
        "quantity": 1,
        "tax_amount": 0,
        "tax_rate": 0
    }
  ]
}