**These specifications are a base model. All customers are responsible for ensuring their map or EDI is compliant with their trading partner's most current specifications.
X12 810 Invoice
Revised March 31, 2023
This Draft Standard for Trial Use contains the format and establishes the data contents of the Invoice Transaction Set (810) for use within the context of an Electronic Data Interchange (EDI) environment. The transaction set can be used to provide for customary and established business and industry practice relative to the billing for goods and services provided.
Delimiters
~ Segment
* Element
> Component
EDI samples
None included
Interchange Control Header
RequiredMax use 1
To start and identify an interchange of zero or more functional groups and interchange-related control segments
Example
ISA*00* *00* *XX*XXXXXXXXXXXXXXX*XX*XXXXXXXXXXXXXXX*240628*0923*U*00401*000000000*X*X*>~
Authorization Information Qualifier
Required
Identifier (ID)
Code to identify the type of information in the Authorization Information
00
No Authorization Information Present (No Meaningful Information in I02)
Authorization Information
Required
String (AN)
Min 10Max 10
Information used for additional identification or authorization of the interchange sender or the data in the interchange; the type of information is set by the Authorization Information Qualifier (I01)
Security Information Qualifier
Required
Identifier (ID)
Code to identify the type of information in the Security Information
00
No Security Information Present (No Meaningful Information in I04)
Security Information
Required
String (AN)
Min 10Max 10
This is used for identifying the security information about the interchange sender or the data in the interchange; the type of information is set by the Security Information Qualifier (I03)
Interchange ID Qualifier
Required
Identifier (ID)
Min 2Max 2
Qualifier to designate the system/method of code structure used to designate the sender or receiver ID element being qualified
Codes
Interchange Sender ID
Required
String (AN)
Min 15Max 15
Identification code published by the sender for other parties to use as the receiver ID to route data to them; the sender always codes this value in the sender ID element
Interchange ID Qualifier
Required
Identifier (ID)
Min 2Max 2
Qualifier to designate the system/method of code structure used to designate the sender or receiver ID element being qualified
Codes
Interchange Receiver ID
Required
String (AN)
Min 15Max 15
Identification code published by the receiver of the data; When sending, it is used by the sender as their sending ID, thus other parties sending to them will use this as a receiving ID to route data to them
Interchange Date
Required
Date (DT)
YYMMDD format
Date of the interchange
Interchange Time
Required
Time (TM)
HHMM format
Time of the interchange
Interchange Control Standards Identifier
Required
Identifier (ID)
Code to identify the agency responsible for the control standard used by the message that is enclosed by the interchange header and trailer
U
U.S. EDI Community of ASC X12, TDCC, and UCS
Interchange Control Version Number
Required
Identifier (ID)
This version number covers the interchange control segments
00401
Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1997
Interchange Control Number
Required
Numeric (N0)
Min 9Max 9
A control number assigned by the interchange sender
Acknowledgment Requested
Required
Identifier (ID)
Min 1Max 1
Code sent by the sender to request an interchange acknowledgment (TA1)
0
No Acknowledgment Requested
1
Interchange Acknowledgment Requested
Usage Indicator
Required
Identifier (ID)
Min 1Max 1
Code to indicate whether data enclosed by this interchange envelope is test, production or information
I
Information
P
Production Data
T
Test Data
Component Element Separator
Required
String (AN)
Min 1Max 1
Type is not applicable; the component element separator is a delimiter and not a data element; this field provides the delimiter used to separate component data elements within a composite data structure; this value must be different than the data element separator and the segment terminator
>
Component Element Separator
Functional Group Header
RequiredMax use 1
To indicate the beginning of a functional group and to provide control information
Example
GS*IN*XXXXXXX*XXXXX*20240628*0603*000000000*X*004010~
Functional Identifier Code
Required
Identifier (ID)
Code identifying a group of application related transaction sets
IN
Invoice Information (810,819)
Application Sender's Code
Required
String (AN)
Min 2Max 15
Code identifying party sending transmission; codes agreed to by trading partners
Application Receiver's Code
Required
String (AN)
Min 2Max 15
Code identifying party receiving transmission. Codes agreed to by trading partners
Date
Required
Date (DT)
CCYYMMDD format
Date expressed as CCYYMMDD
Time
Required
Time (TM)
HHMM, HHMMSS, HHMMSSD, or HHMMSSDD format
Time expressed in 24-hour clock time as follows: HHMM, or HHMMSS, or HHMMSSD, or HHMMSSDD, where H = hours (00-23), M = minutes (00-59), S = integer seconds (00-59) and DD = decimal seconds; decimal seconds are expressed as follows: D = tenths (0-9) and DD = hundredths (00-99)
Group Control Number
Required
Numeric (N0)
Min 1Max 9
Assigned number originated and maintained by the sender
Responsible Agency Code
Required
Identifier (ID)
Min 1Max 2
Code used in conjunction with Data Element 480 to identify the issuer of the standard
T
Transportation Data Coordinating Committee (TDCC)
X
Accredited Standards Committee X12
Version / Release / Industry Identifier Code
Required
String (AN)
Code indicating the version, release, subrelease, and industry identifier of the EDI standard being used, including the GS and GE segments; if code in DE455 in GS segment is X, then in DE 480 positions 1-3 are the version number; positions 4-6 are the release and subrelease, level of the version; and positions 7-12 are the industry or trade association identifiers (optionally assigned by user); if code in DE455 in GS segment is T, then other formats are allowed
004010
Draft Standards Approved for Publication by ASC X12 Procedures Review Board through October 1997
Heading
010
Transaction Set Header
RequiredMax use 1
To indicate the start of a transaction set and to assign a control number
Example
ST*810*0001~
Transaction Set Identifier Code
Required
Identifier (ID)
Code uniquely identifying a Transaction Set
- The transaction set identifier (ST01) used by the translation routines of the interchange partners to select the appropriate transaction set definition (e.g., 810 selects the Invoice Transaction Set).
810
Invoice
Transaction Set Control Number
Required
Numeric (N)
Min 4Max 9
Identifying control number that must be unique within the transaction set functional group assigned by the originator for a transaction set
020
Beginning Segment for Invoice
RequiredMax use 1
To indicate the beginning of an invoice transaction set and transmit identifying numbers and dates
Example
BIG*20230330*XXXXX*20230331*X~
Date
Required
Date (DT)
CCYYMMDD format
Date expressed as CCYYMMDD
- BIG01 is the invoice issue date.
Invoice Number
Required
String (AN)
Min 1Max 22
Identifying number assigned by issuer
Date
Optional
Date (DT)
CCYYMMDD format
Date expressed as CCYYMMDD
- BIG03 is the date assigned by the purchaser to purchase order.
Usage notes
Date as YYYYMMDD.
Purchase Order Number
Optional
String (AN)
Min 1Max 22
Identifying number for Purchase Order assigned by the orderer/purchaser
Usage notes
LLLLLMMDD999
130
Terms of Sale/Deferred Terms of Sale
OptionalMax use >1
To specify terms of sale
Example
ITD*XX*XX*00000*20230330*0*20230330*00*00****X~
Terms Type Code
Optional
Identifier (ID)
Min 2Max 2
Code identifying type of payment terms
- If the code in ITD01 is "04", then ITD07 or ITD09 is required and either ITD10 or ITD11 is required; if the code in ITD01 is "05", then ITD06 or ITD07 is required.
Usage notes
The code that best matches the terms description.
Terms Basis Date Code
Optional
Identifier (ID)
Min 1Max 2
Code identifying the beginning of the terms period
Usage notes
Invoice date; receipt of goods; receipt in inventory.
Terms Discount Percent
Optional
Decimal number (R)
Min 1Max 6
Terms discount percentage, expressed as a percent, available to the purchaser if an invoice is paid on or before the Terms Discount Due Date
Usage notes
Percent to be reduced from invoice.
Terms Discount Due Date
Optional
Date (DT)
CCYYMMDD format
Date payment is due if discount is to be earned expressed in format CCYYMMDD
Usage notes
Date to pay by to receive discount.
Terms Discount Days Due
Optional
Numeric (N0)
Min 1Max 3
Number of days in the terms discount period by which payment is due if terms discount is earned
Usage notes
Number of days to pay to receive discount.
Terms Net Due Date
Optional
Date (DT)
CCYYMMDD format
Date when total invoice amount becomes due expressed in format CCYYMMDD
Usage notes
Date net amount is due.
Terms Net Days
Optional
Numeric (N0)
Min 1Max 3
Number of days until total invoice amount is due (discount not applicable)
Usage notes
Number of days to pay net amount.
Terms Discount Amount
Optional
Numeric (N2)
Min 1Max 10
Total amount of terms discount
Usage notes
Amount to be deducted from gross amount.
Description
Optional
String (AN)
Min 1Max 80
A free-form description to clarify the related data elements and their content
Usage notes
Free form description (i.e.; 2% 10 net 30).
Detail
IT1 Loop
OptionalMax >1
010
Baseline Item Data (Invoice)
RequiredMax use 1
To specify the basic and most frequently used line item data for the invoice and related transactions
Example
IT1**00000*EA*0000000**UN*XXXX~
If either Quantity Invoiced (IT1-02), Unit or Basis for Measurement Code (IT1-03) or Unit Price (IT1-04) are present, then the others are required
If either Product/Service ID Qualifier (IT1-06) or Product/Service ID (IT1-07) is present, then the other is required
Quantity Invoiced
Optional
Decimal number (R)
Min 1Max 10
Number of units invoiced (supplier units)
Usage notes
Quantity shipped.
Unit or Basis for Measurement Code
Optional
Identifier (ID)
Code specifying the units in which a value is being expressed, or manner in which a measurement has been taken
CA
Case
EA
Each
Unit Price
Optional
Decimal number (R)
Min 1Max 15
Price per unit of product, service, commodity, etc.
Product/Service ID Qualifier
Optional
Identifier (ID)
Code identifying the type/source of the descriptive number used in Product/Service ID (234)
- IT106 through IT125 provide for ten different product/service IDs for each item. For example: Case, Color, Drawing No., U.P.C. No., ISBN No., Model No., or SKU.
IN
Buyer's Item Number
UA
U.P.C./EAN Case Code (2-5-5)
UI
U.P.C. Consumer Package Code (1-5-5)
UN
U.P.C. Case Code Number (1-1-5-5)
UP
U.P.C. Consumer Package Code (1-5-5-1)
VN
Vendor's (Seller's) Item Number
Product/Service ID
Optional
String (AN)
Min 1Max 48
Identifying number for a product or service
Usage notes
Costco's item number, vendor's model number, UPC, or ISBN.
040
Tax Information
OptionalMax use 10
To specify tax information
Usage notes
Canada only.
Example
TXI*ZZ*00*000~
Tax Type Code
Required
Identifier (ID)
Code specifying the type of tax
ZZ
Tobacco Tax
Monetary Amount
Optional
Decimal number (R)
Min 1Max 15
Monetary amount
- TXI02 is the monetary amount of the tax.
Usage notes
Total tax amount.
Percent
Optional
Decimal number (R)
Min 1Max 10
Percentage expressed as a decimal
- TXI03 is the tax percent expressed as a decimal.
Usage notes
Format 9.99 or .9999.
PID Loop
OptionalMax >1
060
Product/Item Description
RequiredMax use 1
To describe a product or process in coded or free-form format
Example
PID*F****XXX~
Item Description Type
Required
Identifier (ID)
Code indicating the format of a description
- If PID01 equals "F", then PID05 is used. If PID01 equals "S", then PID04 is used. If PID01 equals "X", then both PID04 and PID05 are used.
F
Free-form
Description
Optional
String (AN)
Min 1Max 80
A free-form description to clarify the related data elements and their content
Usage notes
Item description.
SAC Loop
OptionalMax >1
180
Service, Promotion, Allowance, or Charge Information
RequiredMax use 1
To request or identify a service, promotion, allowance, or charge; to specify the amount or percentage for the service, promotion, allowance, or charge
Example
SAC*C*ZZZZ***00000000000000*X*000*000000000****02***XXXX~
If either Allowance/Charge Percent Qualifier (SAC-06) or Percent (SAC-07) is present, then the other is required
Allowance or Charge Indicator
Required
Identifier (ID)
Code which indicates an allowance or charge for the service specified
- If SAC01 is "A" or "C", then at least one of SAC05, SAC07, or SAC08 is required.
A
Allowance
C
Charge
Service, Promotion, Allowance, or Charge Code
Optional
Identifier (ID)
Code identifying the service, promotion, allowance, or charge
ZZZZ
Mutually Defined
Amount
Optional
Numeric (N2)
Min 1Max 15
Monetary amount
- SAC05 is the total amount for the service, promotion, allowance, or charge.
- If SAC05 is present with SAC07 or SAC08, then SAC05 takes precedence.
Allowance/Charge Percent Qualifier
Optional
Identifier (ID)
Min 1Max 1
Code indicating on what basis allowance or charge percent is calculated
Percent
Optional
Decimal number (R)
Min 1Max 6
Percent expressed as a percent
Usage notes
Format 9.99 or .9999.
Rate
Optional
Decimal number (R)
Min 1Max 9
Rate expressed in the standard monetary denomination for the currency specified
- SAC08 is the allowance or charge rate per unit.
Allowance or Charge Method of Handling Code
Optional
Identifier (ID)
Code indicating method of handling for an allowance or charge
02
Off Invoice
06
Charge to be Paid by Customer
Description
Optional
String (AN)
Min 1Max 80
A free-form description to clarify the related data elements and their content
Usage notes
Must have A/C description.
Summary
010
Total Monetary Value Summary
RequiredMax use 1
To specify the total invoice discounts and amounts
Example
TDS*00~
Amount
Required
Numeric (N2)
Min 1Max 15
Monetary amount
- TDS01 is the total amount of invoice (including charges, less allowances) before terms discount (if discount is applicable).
Usage notes
Total amount plus charges minus allowances before terms.
020
Tax Information
OptionalMax use 10
To specify tax information
Usage notes
Canada only.
Example
TXI*GS*00*0~
Tax Type Code
Required
Identifier (ID)
Code specifying the type of tax
GS
GST/HST Tax
ST
Other QST/PST Tax
ZZ
Tobacco Tax
Monetary Amount
Optional
Decimal number (R)
Min 1Max 15
Monetary amount
- TXI02 is the monetary amount of the tax.
Usage notes
Total tax amount.
Percent
Optional
Decimal number (R)
Min 1Max 10
Percentage expressed as a decimal
- TXI03 is the tax percent expressed as a decimal.
Usage notes
Format 9.99 or .9999.
SAC Loop
OptionalMax >1
040
Service, Promotion, Allowance, or Charge Information
RequiredMax use 1
To request or identify a service, promotion, allowance, or charge; to specify the amount or percentage for the service, promotion, allowance, or charge
Example
SAC*C*ZZZZ***0000000000000*******02***XXXXXX~
Allowance or Charge Indicator
Required
Identifier (ID)
Code which indicates an allowance or charge for the service specified
- If SAC01 is "A" or "C", then at least one of SAC05, SAC07, or SAC08 is required.
A
Allowance
C
Charge
N
No Allowance or Charge
Service, Promotion, Allowance, or Charge Code
Optional
Identifier (ID)
Code identifying the service, promotion, allowance, or charge
ZZZZ
Mutually Defined
Amount
Optional
Numeric (N2)
Min 1Max 15
Monetary amount
- SAC05 is the total amount for the service, promotion, allowance, or charge.
- If SAC05 is present with SAC07 or SAC08, then SAC05 takes precedence.
Allowance or Charge Method of Handling Code
Optional
Identifier (ID)
Code indicating method of handling for an allowance or charge
02
Off Invoice
06
Charge to be Paid by Customer
Description
Optional
String (AN)
Min 1Max 80
A free-form description to clarify the related data elements and their content
Usage notes
Must have A/C description (i.e. freight charge).
070
Transaction Totals
OptionalMax use 1
To transmit a hash total for a specific element in the transaction set
- Number of line items (CTT01) is the accumulation of the number of IT1 segments.
If used, hash total (CTT02) is the sum of the value of quantities invoiced (IT102) for each IT1 segment.
Example
CTT*0000~
Number of Line Items
Required
Numeric (N0)
Min 1Max 6
Total number of line items in the transaction set
080
Transaction Set Trailer
RequiredMax use 1
To indicate the end of the transaction set and provide the count of the transmitted segments (including the beginning (ST) and ending (SE) segments)
Example
SE*000*0001~
Number of Included Segments
Required
Numeric (N0)
Min 1Max 10
Total number of segments included in a transaction set including ST and SE segments
Transaction Set Control Number
Required
Numeric (N)
Min 4Max 9
Identifying control number that must be unique within the transaction set functional group assigned by the originator for a transaction set
Functional Group Trailer
RequiredMax use 1
To indicate the end of a functional group and to provide control information
Example
GE*0*00000~
Number of Transaction Sets Included
Required
Numeric (N0)
Min 1Max 6
Total number of transaction sets included in the functional group or interchange (transmission) group terminated by the trailer containing this data element
Group Control Number
Required
Numeric (N0)
Min 1Max 9
Assigned number originated and maintained by the sender
Interchange Control Trailer
RequiredMax use 1
To define the end of an interchange of zero or more functional groups and interchange-related control segments
Example
IEA*0*000000000~
Number of Included Functional Groups
Required
Numeric (N0)
Min 1Max 5
A count of the number of functional groups included in an interchange
Interchange Control Number
Required
Numeric (N0)
Min 9Max 9
A control number assigned by the interchange sender
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article