Skip to main content
Online Payments

Level 2 and Level 3 data

Overview

You can send level 2 and level 3 data to qualify for the lower interchange fees when your consumer uses a commercial, corporate, purchasing, or government card. The more data you provide, the higher the chance of qualifying for lower interchange fees.

In order to qualify for lower interchange fees, you must send the following fields in the request of the /checkout/intent endpoint:

L2 and L3 data support fields
Field name Description Data type
purchaseOrderNumber The purchase order number provided by the consumer. Uniquely identifies a commercial document issued by a buyer to a seller indicating types, quantities, and agreed prices for the products or services. String (17 characters)
cart.taxAmount Monetary value of the tax amount assessed to the payment. Integer
cart.totalFeeAmount The total amount of a charge to be paid prior to or at origination, regardless of who is paying. This is the aggregate sum of all transactional charges. Integer
cart.totalShippingAmount Specifies the monetary value to be paid for the postage and related transportation to get a package from the shipping carrier to the consumer for all items purchased. Integer
cart.shippingAddress.postalCode The postal code of the shipping address. String
cart.shippingAddress.country The country code of the shipping address based on Alpha 3 ISO standards. String
cart.transactionDiscountAmount                                        Monetary value of the total discount amount applied to the payment. Integer
cart.taxes Object for list of all the taxes that applies to the transaction. Object
cart.lineItems Object for the list of line items. Object
cart.lineItems.id Product code assigned by merchant of the item purchased String
cart.lineItems.quantity The quantity of the product purchased. Number (Double)
cart.lineItems.name Product name assigned by merchant of the item purchased. String
cart.lineItems.unitPrice Specifies the monetary value of the per item cost of a good or service Integer
cart.lineItems.description Description of the item purchased String
cart.lineItems.imageURL Product image link assigned by merchant of the item purchased. String
cart.lineItems.taxInclusiveLineItemTotalAmount                                                                                                                                                                                                                                                              Specifies the monetary value (inclusive of tax) for the price of the product or service multiplied by the quantity of the items purchased recorded in the transaction addendum data. Integer
cart.lineItems.transactionDiscountAmount Monetary value of total discount amount applied to the payment. Integer
cart.lineItems.discounts Object for the list of discounts. Types of discounts are:
  • Coupon
  • Gift card
  • Promotion
  • Unspecified/ Other
Object
cart.lineItems.totalFeeAmount The total amount of a charge, to be paid prior to, or at origination, regardless of who is paying. Integer
cart.lineItems.transactionCharges

List of transactional charges: 

  • Unspecified/ Other
  • Convenience fee
  • Service fee
  • Surcharge
  • Tip
  • Shipping fee
  • Gratuity
Object
cart.lineItems.product Object for merchant product information. Object
cart.lineItems.totalShippingAmount Specifies the monetary value to be paid for the postage and related transportation to get a package from the shipping carrier to the consumer for all items purchased. Integer
cart.lineItems.shippingMethod Object for shipping method information. Object
cart.lineItems.totalTaxAmount The amount added to the transaction for taxes. Integer
cart.lineItems.taxes

The object for list of all taxes that applies to the transaction. List of the tax rates: 

  • Federal/National Sales Tax
  • State Sales Tax
  • City Sales Tax
  • Local Sales Tax
  • Municipal Sales Tax
  • Amusement Tax
  • Least Tax
  • Service Tax
  • Communication Tax
  • Other Tax
  • Value Added Tax (VAT)
  • Shipping VAT
  • Goods and Services (GST)
  • Provincial Sales Tax (PST)
  • Harmonized Sales Tax (HST)
  • Quebec Sales Tax (QST)
  • Energy Tax
  • Import Tax
  • Alternate Tax
Object
cart.summaryItemCommodityCode

The order-level commodity code categorizes a purchase for Canadian commercial card interchange and reporting.

String
merchant.merchantVatRegistrationNumber

Identifies your GST and HST registration with the Canada Revenue Agency (CRA).

String
merchant.pstTaxRegistrationNumber

Identifies your PST or QST registration in Canada.

String
cart.isTaxable

Indicates whether the payment includes tax. true means tax is included; false means tax is not included.

Boolean
consumer.customerVatRegistrationNumber

Identifies the buyer’s GST and HST registration with the CRA for business-to-business (B2B) purchasing card transactions.

String
cart.taxableIndicator

Categorizes tax types by source, characteristics, and applicability rules. Example values are:

  • TAXABLE
  • ZERO_RATED
  • EXEMPT.
String
cart.taxTreatmentCode

Specifies how the invoice handles pricing and tax. Valid values are:

  • 0: Net prices with tax calculated at the line-item level.
  • 1: Net prices with tax calculated at the invoice level.
  • 2: Gross prices with tax information provided at the line-item level.
  • 3: Gross prices with tax information provided at the invoice level.
  • 4: No tax applies.
String
Note
  • If you are integrated with Commerce Platform, then you can pass the level 2 and level 3 data in every intent call. If your consumer uses a commercial, corporate, purchasing, or government card, then this information is used to get a lower interchange fees.
  • If you are integrated with Orbital, we recommend you perform an Auth call to understand the card type. Once you determine the card type and its eligibility, you can go to the Orbital Virtual Terminal to initiate the capture.

Level 2 requirements

Commercial cards that support Level 2 data provide cardholders with enhanced transaction details.

Review the Level 2 data field requirements for each payment brand:

Level 2 fields
Checkout Field Level  Visa/ChaseNet Mastercard American Express Discover

purchaseOrderNumber

L2 Optional Required Optional Optional
cart.taxAmount L2 Required Required Optional Optional
cart.isTaxable L2 Optional Required Optional Required
cart.taxableIndicator L2 Required Optional N/A N/A
consumer.customerVatRegistrationNumber L2 Required Optional N/A N/A

cart.summaryItemCommodityCode

L2 Required N/A N/A N/A
merchant.merchantVatRegistrationNumber L2 Required N/A N/A N/A
merchant.pstTaxRegistrationNumber L2 Required N/A N/A N/A

Level 3 requirements

Purchase card Level 3 data includes detailed transaction information, such as item descriptions, quantities, and prices. Businesses often provide this data for business-to-business credit card transactions.

Review the Level 3 data field requirements for each payment brand:

Level 3 fields
Checkout Field Level  Visa/ChaseNet Mastercard
cart.lineItems.totalShippingAmount L3 Required Optional
cart.taxTreatmentCode L3 Required Optional
cart.transactionDiscountAmount   L3 Required N/A
cart.lineItems.description L3 Required Required
cart.lineItems.id L3 Required Required
cart.lineItems.quantity L3 Required Required
cart.lineItems.unitPrice L3 Required Required
cart.lineItems.taxInclusiveLineItemTotalAmount L3 Required Required
cart.lineItems.transactionDiscountAmount L3 Required Required

The following is an example of how it would look when sending Level 2 and Level 3 data.

HTTP method: POST

Endpoint: /checkout/intent

Scenario: Sending Level 2 and Level 3 data to quality for lower interchange fees.

{
    "currencyCode": "USD",
    "merchantOrderNumber": "gNcnbpMWjFCTvQFWXnVG6Z",
    "cart": {
        "lineItems": [
            {
                "id": "0",
                "quantity": 1,
                "description": "this is px order item1",
                "name": "Item1",
                "unitPrice": 222,
                "taxable": true,
                "image_url": "null",
                "taxes": [
                    {
                        "id": "12313123",
                        "taxTypeCode": "TAX_TYPE_VAT",
                        "taxTypeDescription": "Value-added tax",
                        "taxMode": "RATE_MODE_PERCENTAGE",
                        "taxRate": 6,
                        "taxAmount": 456
                    }
                ],
                "totalDiscountAmount": 10
            }
        ],
        "totalFeeAmount": 10,
        "discounts": [
            {
                "discountType": "DISCOUNT_TYPE_PROMOTION",
                "discountTypeDescription": "Summer Sale",
                "discountMode": "RATE_MODE_FLAT",
                "transactionDiscountAmount": 100,
                "promotionCode": "SUMMER11",
                "discountTax": {
                    "id": "12313123",
                    "taxTypeCode": "TAX_TYPE_VAT",
                    "taxTypeDescription": "item discounts taxRate Value Added Tax",
                    "taxMode": "RATE_MODE_PERCENTAGE",
                    "taxRate": 6,
                    "taxAmount": 46
                }
            },
            {
                "discountType": "DISCOUNT_TYPE_PROMOTION",
                "discountTypeDescription": "Winter Sale",
                "discountMode": "RATE_MODE_FLAT",
                "transactionDiscountAmount": 100,
                "promotionCode": "Winter10"
            }
        ],
        "totalTransactionAmount": 100000,
        "subTotalAmount": {
            "currencyCode": "USD",
            "amount": 1
        },
        "totalTax": {
            "currencyCode": "USD",
            "amount": 0
        },
        "shippingAddress": {
            "recipientFullName": "Alan Turing",
            "line1": "383 Madison Ave",
            "line2": "Unit 004",
            "city": "New York",
            "state": "NY",
            "country": "US",
            "postalCode": "10017"
        }
    },
    "checkoutOptions": {
        "authorization": {
            "authorizationType": "AUTH_METHOD_CART_AMOUNT"
        },
        "capture": {
            "captureMethod": "CAPTURE_METHOD_NOW"
        },
        "consumerProfileOptions": {
            "isSaveConsumerProfile": "true"
        }
    }
}

Response:

{
    "checkoutSessionToken": "eyJraWQiOiJiZGMxMDM0YS01MTBhLTQxNjktYjlmMy0zNmZkOWRiOGExNGIiLCJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJrc2kiOiI4MDYyNjgyYmY3MDM1YWE0OTIwZmVlZmVjY2ViODQ2MyIsImlzcyI6ImNoZWNrb3V0IiwibWlkIjoiOTkyMzAzODIwOTEwIiwib2lkIjoiOWI4ZmJkYTgtNGU2Ni00YWI0LTkwMDgtNDFjMDQwMDU4MWNjIiwibXNyIjoiIiwic3BpIjoiYzI4YmY2NzktOGQxOS00Nzc3LThkYjctOGIyMDhiODNjM2RlIiwicCI6ImluIiwiUm9sZSI6WyJUUkFOU0FDVElPTkFMX0NIRUNLT1VUX1NIT1BQRVIiXSwibW9yIjoiMTIzNDU2Nzg5MTIzNDY2NDIxOTEwIiwib2QiOiJhMDgzM2ZlMTA2NWRhOGQ0NDNhNzM4ZWJiMTc4ODM5Y2Y4Yjg0YmZkMTlkMjU3NTFhZmUzMjhkNzllYWEyNWQxMWI0NzU5NWQ3ODVjYTkwMDYwMjFlMTlkYWRhZjcxNTJhYTY3YWY4MzljYWY3NTVlMGFmYzExNDQ4N2Y3NTgyNiIsImV4cCI6MTcxMzg5OTkzOCwiaWF0IjoxNzEzODkyNzM4LCJqdGkiOiJjMGE0MTFmOC02ODIxLTQyNDktOTU0ZS01NzFlOGQxOTViMTgiLCJjaWQiOiJhY2VlMjdjMC05OTc4LTQwNGEtYjM2NC0yYTcwODU2MTVkN2EifQ.Uri52i0PvLTlyaxIyzoR4uE_zKYntatCf3uF8tkPuiEtKwhGWw_Wbk-lFdJS0I5QwvNHSICgFsvktKRiAaAU17HgzDIs9ItBTRheRtDICB1IXLYhchThUvhwyli6M_Lr02ZqZGkwIcuIl7hvKPjJjRWvWS5UDx5cpTS31dQ4-a-m-cosFYPmCMKlpnB5sPd4jVB5zJsnbJU8V1cH4zBpvSaZfTzR6-U8eWt_V4PEiL0JiV-GRyDjLgnjfsR_g9p2ayaBY_ym_rMkzWlJmfVDT5Sddt-pFM6xlSB2h_jlhAydyzlL7KpSXshBKj_8fkbg0TMepbsmwxHq4ZjPQ0vu7Q",
    "redirectedUrl": ""
}
Is this page helpful?