DEVELOPER

B2B API Specification

Version version: 3.1.0

production
sandbox

B2B Payment API

Level 3 Data

What is Level 3 data?

Level 3 data is additional information that may be applied to enrich a transaction’s reporting value to both the merchants and the customers. Generally, merchant service providers offer reduced or qualified pricing for transactions that are processed with Level 3 data.

Level 3 data can be added to any approved and unsettled Sale transaction with Visa or MasterCard. Some level 3 data, specifically enhanced data such as Invoice and Customer Reference ID, may overlap with data provided with the base transaction. Enhanced data, when applied, will always overwrite such data that may already be stored with the transaction.

Level 3 data consists of enhanced data and 1 or more line item records. This information is intended to describe the details of the transaction and the products or services rendered. However, defaults may be applied in the event when some data is missing or unknown. Skipped parameters will be replaced with PayTrace defaults.

Please make sure to set Level 3 defaults with your PayTrace Virtual Terminal Account before moving forward to add level 3 data methods.

Visa and MasterCard have their own requirements for level 3 data,
so your application should be able to determine if the transaction being
updated is with a Visa or a MasterCard before formatting and sending the request.

All Visa account numbers begin with “4” and all MasterCard account numbers
begin with “5”.

In order to issue more cards, MasterCard is beginning to issue cards
beginning with a "2" in 2017.

Why do I need to enter Level 2 or Level 3 data?

Level 2 and 3 data is additional information that can be sent through with your transactions that can help qualify (keep processing rates low) certain types of credit cards. Level 2 and 3 data typically can help when accepting Business Cards, Purchasing Cards, Corporate Cards, or Government (GSA) Cards.

In most cases when you accept these types of cards, the dollar amount of the transaction is larger than if you were to accept a consumer/personal credit card. When the dollar amounts of the transactions go up, the risk associated with the card brands funding them goes up. This results in a higher processing rate due to the higher risk. However, level 2 and 3 data helps provide additional information about the merchant, customer, and transaction to help meet the card brand's criteria for reaching a lower processing rate. This additional information is not required to process or get funded for your transactions. However, providing this information helps reduce the risk associated with the funding of the transactions by the card brands, which results in lower processing rates.

For more information about specific level 2 and 3 information, click here

With MasterCard

post /v3/transaction/level3/mastercard/{transaction_id}

This method can be used to add Level 3 data to any approved and unsettled sale transaction with MasterCard.

You can add single or multiple line items as needed.

Parameters
transaction_id required
string

Loading...

X-Integrator-Id
string
Maximum:
12

Loading...

X-Permalinks
string
Maximum:
4

Loading...

Request Schema
invoice_number
string
Example:
17

Loading...

customer_reference_id
string
Maximum:
50
Example:
PO123456

Loading...

tax_amount
number
Example:
2.16

Loading...

national_tax_amount
number
Example:
0.41

Loading...

freight_amount
number
Example:
0

Loading...

duty_amount
number
Example:
0

Loading...

source_address
object
Example:
[object Object]

Loading...

shipping_address
object

Loading...

additional_tax_amount
number
Example:
0.39

Loading...

merchant_id required
integer
Example:
246810

Loading...

additional_tax_included
boolean
Example:
true

Loading...

line_items
array

Loading...

Example Request
{
  "invoice_number": "17",
  "customer_reference_id": "PO123456",
  "tax_amount": 2.16,
  "national_tax_amount": 0.41,
  "source_address": {
    "postal_code": "99201"
  },
  "shipping_address": {
    "name": "Steve Smith",
    "street_address": "1 Main St.",
    "street_address2": "Suite 12",
    "city": "Spokane",
    "state": "WA",
    "postal_code": "85284",
    "country": "USA"
  },
  "additional_tax_amount": 0.39,
  "merchant_id": 246810,
  "additional_tax_included": true,
  "line_items": {
    "additional_tax_amount": 0.41,
    "additional_tax_rate": 0.08,
    "amount": 80.55,
    "description": "business services",
    "discount_amount": 3.27,
    "product_id": "sku1245",
    "quantity": 4,
    "unit_of_measure": "NMB",
    "unit_cost": 5.24,
    "additional_tax_included": true,
    "debit_or_credit": "C",
    "discount_rate": 0.01,
    "discount_included": true,
    "merchant_tax_id": "12-123456",
    "tax_included": true
  }
}
Example Response
200 Successful Response
422 Validation Error

With Visa

post /v3/transaction/level3/visa/{transaction_id}

This method can be used to add Level 3 data to an approved and unsettled sale transaction with a Visa card.

You can add none or multiple line items as needed.

Parameters
transaction_id required
string

Loading...

X-Integrator-Id
string
Maximum:
12

Loading...

X-Permalinks
string
Maximum:
4

Loading...

Request Schema
invoice_number
string
Example:
17

Loading...

customer_reference_id
string
Maximum:
50
Example:
PO123456

Loading...

tax_amount
number
Example:
2.16

Loading...

national_tax_amount
number
Example:
0.41

Loading...

freight_amount
number
Example:
0

Loading...

duty_amount
number
Example:
0

Loading...

source_address
object
Example:
[object Object]

Loading...

shipping_address
object

Loading...

additional_tax_amount
number
Example:
0.39

Loading...

merchant_id required
integer
Example:
246810

Loading...

additional_tax_rate
number
Example:
0.08

Loading...

merchant_tax_id
string
Example:
3456test

Loading...

customer_tax_id
string
Example:
3456defg

Loading...

commodity_code
string
Example:
4321

Loading...

discount_amount
number
Example:
0.01

Loading...

line_items
array

Loading...

Example Request
{
  "invoice_number": "17",
  "customer_reference_id": "PO123456",
  "tax_amount": 2.16,
  "national_tax_amount": 0.41,
  "source_address": {
    "postal_code": "99201"
  },
  "shipping_address": {
    "name": "Steve Smith",
    "street_address": "1 Main St.",
    "street_address2": "Suite 12",
    "city": "Spokane",
    "state": "WA",
    "postal_code": "85284",
    "country": "USA"
  },
  "additional_tax_amount": 0.39,
  "merchant_id": 246810,
  "additional_tax_rate": 0.08,
  "merchant_tax_id": "3456test",
  "customer_tax_id": "3456defg",
  "commodity_code": "4321",
  "discount_amount": 0.01,
  "line_items": {
    "additional_tax_amount": 0.41,
    "additional_tax_rate": 0.08,
    "amount": 80.55,
    "description": "business services",
    "discount_amount": 3.27,
    "product_id": "sku1245",
    "quantity": 4,
    "unit_of_measure": "NMB",
    "unit_cost": 5.24,
    "commodity_code": "4321"
  }
}
Example Response
200 Successful Response
422 Validation Error
©2025 North is a registered DBA of NorthAB, LLC. All rights reserved. North is a registered ISO of BMO Harris Bank N.A., Chicago, IL, Citizens Bank N.A., Providence, RI, The Bancorp Bank, Philadelphia, PA, FFB Bank, Fresno, CA, Wells Fargo Bank, N.A., Concord, CA, and PNC Bank, N.A.