# X12 810 Invoice EDI Template Generator

> Source: https://netray.co/tools/x12-810-invoice-edi-template-generator
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

Fill in invoice, PO and line details and get a clean X12 810 invoice skeleton with envelope and matching control numbers.

## Category

supply-chain

## Audience

- EDI coordinator
- ERP integration developer
- Order-to-cash analyst

## Tool

**Kind:** template

**Output:** code

**Language:** edi

**Fields:**

#### ISA06 sender ID (15 chars, space padded)

**Key:** sender

**Type:** text

**Default:** NETRAYMFG      

#### ISA08 receiver ID (15 chars, space padded)

**Key:** receiver

**Type:** text

**Default:** ACMERETAIL     

#### GS02 application sender code

**Key:** sender_gs

**Type:** text

**Default:** NETRAYMFG

#### GS03 application receiver code

**Key:** receiver_gs

**Type:** text

**Default:** ACMERETAIL

#### Interchange date (YYMMDD)

**Key:** date6

**Type:** text

**Default:** 261020

#### Group date (CCYYMMDD)

**Key:** date8

**Type:** text

**Default:** 20261020

#### Time (HHMM)

**Key:** time

**Type:** text

**Default:** 0915

#### ISA13 interchange control number (9 digits)

**Key:** icn

**Type:** text

**Default:** 000000417

#### GS06 group control number

**Key:** gcn

**Type:** text

**Default:** 417

#### Invoice number (BIG02)

**Key:** inv_no

**Type:** text

**Default:** INV-2026-10482

#### Customer PO number (BIG04)

**Key:** po_no

**Type:** text

**Default:** 4500219876

#### PO date (CCYYMMDD)

**Key:** po_date

**Type:** text

**Default:** 20261003

#### Ship-to name (N102)

**Key:** ship_to

**Type:** text

**Default:** ACME RETAIL DC 12

#### Ship-to location code (N104)

**Key:** ship_to_id

**Type:** text

**Default:** DC0012

#### Net days (ITD07)

**Key:** terms_days

**Type:** text

**Default:** 30

#### Quantity invoiced

**Key:** line_qty

**Type:** number

**Default:** 240

#### Unit of measure

**Key:** uom

**Type:** select

**Options:**

- EA
- CA
- PK
- LB
- FT

**Default:** EA

#### Unit price

**Key:** unit_price

**Type:** text

**Default:** 12.50

#### Buyer part number (IT107)

**Key:** part_no

**Type:** text

**Default:** BRK-1001

#### Invoice total in cents (TDS01, no decimal)

**Key:** total_cents

**Type:** text

**Default:** 300000

**Blocks:**

#### X12 810 Invoice (version 004010)

**Body:** ISA*00*          *00*          *ZZ*{{sender}}*ZZ*{{receiver}}*{{date6}}*{{time}}*U*00401*{{icn}}*0*P*>~
GS*IN*{{sender_gs}}*{{receiver_gs}}*{{date8}}*{{time}}*{{gcn}}*X*004010~
ST*810*0001~
BIG*{{date8}}*{{inv_no}}*{{po_date}}*{{po_no}}~
N1*ST*{{ship_to}}*92*{{ship_to_id}}~
ITD*01*3*****{{terms_days}}~
DTM*011*{{date8}}~
IT1*1*{{line_qty}}*{{uom}}*{{unit_price}}**BP*{{part_no}}~
TDS*{{total_cents}}~
CTT*1~
SE*9*0001~
GE*1*{{gcn}}~
IEA*1*{{icn}}~

**Notes:** Segment count in SE01 is 9 for this skeleton (ST through SE inclusive). If you add IT1 lines, N1 loops, TXI or SAC segments, recount and update SE01 and CTT01. TDS01 is the total in cents with an implied two decimals (300000 = 3,000.00). Your trading partner's implementation guide overrides this skeleton for qualifiers, required segments and version.

## Content

**Intro:** An X12 810 is the electronic invoice that closes the order-to-cash loop for suppliers selling to retailers, OEMs and distributors. This generator builds a clean 004010 skeleton with the ISA/GS envelope, header, line and summary segments so you can test a map or send a sample to a partner.

**Sections:**

#### How to use the generator

**Body:** Fill the envelope fields first: the ISA sender and receiver IDs must be exactly 15 characters, padded with spaces, and the interchange control number must be nine digits. Then enter the invoice number, the customer PO, ship-to details, terms, one line item and the invoice total in cents. The output updates as you type; copy it into a .edi file or your mapping tool. For multiple lines, repeat the IT1 segment and increment the line number, then recount segments.

**Bullets:**

- ISA is fixed width: 106 characters including the terminator
- Control numbers in ISA13/IEA02 and GS06/GE02 must match
- Use one invoice per ST/SE transaction set
- Send test invoices with ISA15 set to T, not P

#### What each segment does

**Body:** BIG carries the invoice date, invoice number, PO date and PO number. N1 loops identify parties: ST for ship-to, BT for bill-to, RE for remit-to. ITD holds payment terms: ITD01 is the terms type, ITD02 the basis date code (3 is invoice date), ITD03 and ITD05 hold discount percent and days, and ITD07 holds net days. IT1 is the baseline line item with quantity, unit of measure, unit price and product qualifiers such as BP for buyer part number or VP for vendor part. TDS is the invoice total and CTT the line count.

#### Common mistakes and ERP notes

**Body:** The most frequent rejections are a wrong SE01 count, a total in TDS that does not equal the sum of lines plus taxes and charges, and a PO number that does not match the buyer's records, which causes a three-way match failure in their AP system. Decimal handling trips up map developers: TDS is implied-decimal while IT104 uses an explicit decimal. In SAP the 810 usually originates from billing output via the INVOIC IDoc; in Oracle EBS it comes from the e-Commerce Gateway or B2B; in Infor SyteLine and Epicor it comes from the EDI module or an integration layer.

**Cta:** If your 810 maps are hand maintained and every new partner means a new spreadsheet, we can help automate the mapping and testing against your ERP data.

**Faq:**

#### What is the difference between an 810 and an EDIFACT INVOIC?

**Answer:** Both are electronic invoices. The 810 is the ANSI X12 transaction set used mainly in North America, while INVOIC is the UN/EDIFACT message used in Europe and many global supply chains. They carry the same business content but use different syntax, segments and code lists.

#### Should I send the 810 before or after the ASN?

**Answer:** Most partners expect the 856 ASN when goods ship and the 810 invoice at or after shipment, depending on terms and their implementation guide. Some retailers match the invoice to the ASN and the PO, so mismatched quantities cause chargebacks. Always follow the partner's guide.

#### Why is TDS in cents?

**Answer:** TDS01 is defined as a numeric field with two implied decimal places, so 3000.00 is sent as 300000. Sending a decimal point there is a common error that makes the partner's parser reject or misread the total.

#### Does this tool validate against a partner guide?

**Answer:** No. It produces a structurally correct skeleton using common qualifiers. Required segments, qualifiers and code values vary by trading partner, so test with the partner and use their implementation guide as the final authority.

## Search terms

x12 810 invoice sample, edi 810 template, 810 invoice segments, edi 810 example, x12 810 004010 format, edi invoice generator, BIG segment 810, IT1 segment example

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
