Electronic Data Interchange (EDI)
The Electronic Data Interchange (EDI) module enables you to send business information to Trading Partners using structured TRADACOMS standard.
The Focus EDI module is a fully handsfree electronic order processing system.
Operations: The EDI module enables you to
- Create EDI messages
- Send/Receive EDI and batch.co.uk messages
- Process received EDI messages
- Schedule Operations
Settings: Before you start you have to setup the following

The module provides access on a single window to all the supported EDI document types, shown on the left-hand-side panel of the main window
It auto-sends electronic documents, to customers that request them.
Send/Receive EDI and batch.co.uk messages
- Go to Publishing > EDI
- Click Send/Receive All
This will Send the following outbox messages
- EDI invoices
- EDI Credit Notes
- EDI Delivery Notes
- EDI Acknowledgements
- Batch.co.uk
and Receive the following messages

Batch.co.uk
The batch.co.uk internet based settlement system is owned and operated by the Booksellers Association of the United Kingdom and Ireland. It enables both UK publishers and UK (and international) booksellers to update and view all transactions online. Batch provides a single payment solution, allowing booksellers to make a single payment that covers payments to all their suppliers. Suppliers receive a single payment from all their customers Focus enables you to create flat files and to load remittances to / from batch.co.uk. If a customer wishes to make payments by batch.co.uk, then setup their customer record to send their invoices to batch.co.uk
- Go to Accounts> Sales Ledger > Customers
- Select the customer record
- On the Defaults> Options & Choices page, tick the “Send Invoices to Batch.co.uk” box
- On the General page, enter the customer SAN No.
The customer’s invoices and credit notes will be included in the daily Batch.co.uk file.
Schedule Operations
To schedule EDI operations,
- Go to Publishing> e-Commerce > EDI
- Select Tools> Schedule
- select the operations you want to schedule. You are able to schedule the following operation on either a single database or multiple databases
- send files
- receive files
- create outbox files
- process inbox files
- select Single or Multiple database processing
- select schedule settings – time, date, frequency
- enter target email addresses for notifications
- click OK, Schedule Now

Setup EDI Partners
To setup a customer record for EDI, you are required to- enter their EAN Number in the Sales Ledger
- set them up as EDI Partners
Enter Customer’s EAN Number
To enter a Customer’s EAN Number, do the following
- Go to Accounts > Sales Ledger > Customers
- Select the customer record.
- On the General page enter the customer’s EAN Number in the EAN No: box
Once the customer’s EAN Number is entered you can start to receive EDI orders from them.

Setup EDI Partners
To setup EDI Partners, do the following
- Select Publishing> e-Commerce > EDI
- Select Tools> Options
- Click on Trading Partners button
- Click the search icon to select an EDI partner from the customer records

Setup Inbox/Outbox/ftp folders
To setup the inbox and outbox folders, do the following
- Select Publishing> e-Commerce > EDI
- Select Tools> Options
- In the Inbox Settings> Data Folder box select a network folder.
- Enter the extension for the renamed file in the ‘File Extension:’ box.
- In the Outbox Settings> Data Folder box select a network folder.
- Click OK

Setup EDI Document Layouts
To setup EDI Document Layouts, do the following
- Select Publishing> e-Commerce > EDI
- Select Tools> Options
- Click the ‘Outbox Settings’ tab
- Select one of the following document layout
- Invoices
- Credit notes
- Deliveries
- Acknowledgement note
- For each layout specify the
- Test HDR
- Test HDR
- File definition
- Click OK

EDI Exceptions Report Recipients
EDI exception report is triggered and shows orders where:
- ISBN not found in any ledger
- ISBN found but SAN not found
- Customer over credit limit
- Stock on stop
Where an account is on-stop, Focus will import the order, but will not invoice, allowing the goods to be delivered when the customer finally pays up. The exception report is sent by email to the specified list of recipients.
To specify recipient email
- Select Publishing> e-Commerce > EDI
- Select Tools> Options
- on the ‘Inbox Settings’ tab, enter recipients’ email in the ‘Send Exceptions Reports to email address’ box, separated by semi-colon (;).
- click OK

EDI Orders Message Structure
Message | Consisting of Segments | Repeat as shown below |
---|---|---|
ORDHDR File header | MHD = Message Header | One occurrence only, at the start of the file |
ORDHDR File header | TYP = Transaction Type | |
ORDHDR File header | SDT = Supplier Details | |
ORDHDR File header | CDT = Customer Details | |
ORDHDR File header | DNA = Data Narrative | Repeat as necessary at header level |
ORDHDR File header | FIL = File Details | |
ORDHDR File header | MTR = Message Trailer | |
ORDERS Order detail | MHD = Message Header | Repeat for each order |
ORDERS Order detail | CLO = Customer’s Location | |
ORDERS Order detail | ORD = Order References | |
ORDERS Order detail | DIN = Delivery Instructions | |
ORDERS Order detail | DNA = Data Narrative | Repeat as necessary at order level |
ORDERS Order detail | OLD = Order Line Details | Repeat for each order line |
ORDERS Order detail | DNB = Data Narrative | Repeat as necessary at line level |
ORDERS Order detail | OTR = Order Trailer | |
ORDERS Order detail | MTR = Message Trailer | |
ORDTLR File trailer | MHD = Message Header | One occurrence only, at the end of the file |
ORDTLR File trailer | OFT = Order File Totals | |
ORDTLR File trailer | MTR = Message Trailer |
EDI Orders Message Sample Record
Message segments | Description |
---|---|
STX=ANAA:1+5098765432156:ABC BOOKSELLERS+5023456789541:XYZ PUBLISHER+060630:103045+P4371++ORDHDR’ | Start of transmission: the sender’s EAN/GLN number is the same as that of the buyer, in CDT |
MHD=1+ORDHDR:9′ | Message 1: order file header |
TYP=0430′ | Transaction code ‘new orders’ |
SDT=5023456789541′ | Publisher’s EAN/GLN number |
CDT=5098765432156′ | Bookseller’s EAN/GLN number |
DNA=1+206:T02′ | BIC message version number T02 |
DNA=2+207:005′ | BIC Code version number 005 |
FIL=1+1+060630′ | File generation 1, file version 1, 30 June 2006 |
MTR=8′ | End of message 1: 8 segments |
MHD=2+ORDERS:9′ | Message 2: Order message |
CLO=5012345678954′ | Delivery location, EAN/GLN number |
ORD=JX06/1347::060630′ | Order number + date of order (not required if order number is present) |
OLD=1+978086287321X+++1+4+++N+Terry/Women in Khaki’ | Order line 1: identified by ISBN-13, author/title; 4 copies, no dues to be recorded |
OLD=2+:9780006355364+++1+2+++N+Elliott/Bean Book’ | Order line 2: identified by ISBN-13 and author/title; 2 copies, no dues to be recorded |
OTR=2′ | Order trailer: 2 lines in order message |
MTR=7′ | End of message 2: 7 segments |
EDI Acknowledgements Message Structure
Message | Consisting of Segments | Repeat as shown below |
---|---|---|
ACKHDR File header | MHD = Message Header | One occurrence only, at the start of the file |
ACKHDR File header | TYP = Transaction Type | |
ACKHDR File header | SDT = Supplier Details | |
ACKHDR File header | CDT = Customer Details | |
ACKHDR File header | DNA = Data Narrative | Repeat as necessary at header level |
ACKHDR File header | FIL = File Details | |
ACKHDR File header | MTR = Message Trailer | |
ACKMNT Acknowledgement detail | MHD = Message Header | Repeat for each acknowledgement ref. |
ACKMNT Acknowledgement detail | CLO = Customer’s Location | |
ACKMNT Acknowledgement detail | AOR = Acknowledgement References | |
ACKMNT Acknowledgement detail | DNA = Data Narrative | Repeat as necessary at message level |
ACKMNT Acknowledgement detail | ALD = Acknowledgement Line Details | Repeat for each acknowledgement line |
ACKMNT Acknowledgement detail | AGD = Advice of Goods despatched | Repeat for each despatch (in book trade usage, one occurrence only) |
ACKMNT Acknowledgement detail | AQD = Expected Delivery details | Not used in book trade |
ACKMNT Acknowledgement detail | DNB = Data Narrative | Repeat as necessary at line level |
ACKMNT Acknowledgement detail | KTR = Acknowledgement Trailer | |
ACKMNT Acknowledgement detail | MTR = Message Trailer | |
ACKTLR File trailer | MHD = Message Header | One occurrence only, at the end of the file |
ACKTLR File trailer | KFT = Acknowledgement File Totals | |
ACKTLR File trailer | MTR = Message Trailer |
EDI Acknowledgements Message Sample Record
Message segments | Description |
---|---|
STX=ANAA:1+5023456789541:XYZ PUBLISHER+5098765432156:ABC BOOKSELLERS+070430:103045+28613++ACKMNT4′ | Start of transmission |
MHD=1+ACKHDR:4′ | Message 1: Acknowledgement file header |
TYP=3150′ | Transaction code ‘reply to new message, listing only lines that cannot be supplied immediately’ |
SDT=5023456789541′ | Publisher’s EAN/GLN (Global Location Number) |
CDT=5098765432156′ | Bookseller’s EAN/GLN |
DNA=1+206:T02′ | BIC message version number T02 |
DNA=2+207:006′ | BIC Code version number 006 |
FIL=1+1+070430′ | File generation 1, file version 1, 30 April 2007 |
MTR=8′ | End of message 1: 8 segments |
MHD=2+ACKMNT:4′ | Message 2: Acknowledgement message |
CLO=5098765432156′ | Delivery location, EAN/GLN |
AOR=JX93/1347::070430′ | Order number + date of order (not required if order number is present) |
ALD=1+978086287321X+++1+4+4000++Terry/Women in Khaki’ | Acknowledgement line 1: identified by ISBN-13 and author/title; 4 copies, all recorded as dues Note: ISBN-10 should no longer be transmitted. However, trading partners should be prepared to accept it on incoming messages |
DNB=1+1+54:TU+082:06GH1473:092:0711′ | Availability status ‘temporarily unavailable’, customer order line reference 06GH1473, expected November 2007 |
DNB=1+2+55:01′ | Order accepted and recorded as due |
KTR=1′ | Acknowledgement trailer: 1 line in acknowledgement message |
MTR=8′ | End of message 2: 8 segments |
MHD=3+ACKTLR:4′ | Message 3: acknowledgement file trailer |
KFT=1′ | One acknowledgement message in file |
MTR=3′ | End of message 3: 3 segments |
MHD=4+RSGRSG:2′ | Message 4: reconciliation message |
RSG=28613+5098765432156′ | |
MTR=3′ | End of message 4: 3 segments |
END=4′ | End of transmission: 4 messages |
EDI Invoices Message Structure
Message | Consisting of Segments | Repeat as shown below |
---|---|---|
INVFIL Invoice File Header | MHD= Message Header | One occurrence only, at the start of the file |
INVFIL Invoice File Header | TYP= Transaction Type Details | |
INVFIL Invoice File Header | SDT= Supplier Details | |
INVFIL Invoice File Header | CDT = Customer Details | |
INVFIL Invoice File Header | DNA = Data Narrative | Repeat as necessary at header level |
INVFIL Invoice File Header | FIL= File Details | |
INVFIL Invoice File Header | FDT= File Period Dates | |
INVFIL Invoice File Header | ACD= Audit Control Details | |
INVFIL Invoice File Header | MTR= Message Trailer | |
INVOIC Invoice Details | MHD= Message Header | One occurrence for each invoice |
INVOIC Invoice Details | CLO= Customer’s Location | |
INVOIC Invoice Details | IRF= Invoice References | |
INVOIC Invoice Details | PYT= Settlement Terms | Repeat as necessary at invoice level |
INVOIC Invoice Details | DNA = Data Narrative | Repeat as necessary at invoice level |
INVOIC Invoice Details | ODD= Order and Delivery References | Repeat for each order in a multiple order invoice |
INVOIC Invoice Details | ILD = Invoice Line Details | Repeat for each line item |
INVOIC Invoice Details | DNC = Data Narrative | Repeat if necessary at line level |
INVOIC Invoice Details | STL= VAT Rate Invoice Sub Trailer | Repeat for each VAT rate in the message |
INVOIC Invoice Details | TLR= Invoice Trailer | |
INVOIC Invoice Details | MTR= Message Trailer | |
VATTLR File VAT Trailer | MHD= Message Header | One occurrence only, after all INVOIC messages in the file |
VATTLR File VAT Trailer | VRS= VAT Rate Summary | Repeat for each VAT rate in the file |
VATTLR File VAT Trailer | MTR= Message Trailer | |
INVTLR Invoice File Trailer | MHD= Message Header | One occurrence only, at the end of the file |
INVTLR Invoice File Trailer | TOT= File Totals | |
INVTLR Invoice File Trailer | MTR= Message Trailer |
EDI Invoices Message Sample Record
Message segments | Description |
---|---|
STX=ANAA:1+5023456789541:XYZ PUBLISHER+5098765432156:ABC BOOKSELLERS+070430:104133+9++INVFIL’ | Start of transmission: the sender.s EAN/GLN number is the same as that of the supplier, in SDT |
MHD=1+INVFIL:9′ | Message 1: invoicefile header |
TYP=0700′ | Transaction code .original invoice. |
SDT=5023456789541′ | Publisher.s EAN/GLN number.code explicitly agreed with HMRC |
CDT=5098765432156+ABC BOOKSELLERS+STREET HOUSE:HIGH STREET:NEWTOWN:NT3 4TS’ | Bookseller.s EAN/GLN number+ name and address (required by HMRC) |
DNA=1+206:T02′ | BIC message version number T02 |
DNA=2+207:005′ | BIC Code version number 005 |
FIL=25+1+070430′ | File generation 25, file version 1, 30 April 2007 |
MTR=8′ | End of message 1: 8 segments |
MHD=2+INVOIC:9′ | Message 2: Invoicemessage |
CLO=5012345678954′ | Delivery location, EAN/GLN number |
IRF=847077+070331+070331′ | Invoice number, date of invoice, tax-point date (both 31 March 2007) |
PYT=1+070430+30′ | Payment date 30 April 2007, payment terms 30days from date of invoice |
ODD=1+454546:0023036011:070331:070331+0001447930:070331′ | Order & Delivery reference 1: Customer.s order number, supplier.s order number, order date, order receipt date (both 31March 2007)Delivery note number, date of despatch 31 March 2007 |
ILD=1+1+9780091888972+++1+15+80197+1202900+Z+0++++149900++149900+1045600+46500′ | Invoice line 1: identified by ISBN-13, 15 copies,unit cost price (after discount) ¡Ì8.0197, extended line cost (after discount) ¡Ì120.29, zero-rated for VATManufacturer.s selling price ¡Ì14.99, unit cost price ¡Ì14.99Discount value ¡Ì104.56, discount 46.5% |
DNC=1+1+1++082:XYZ009988′ | |
STL=1+Z+0+1+12029+++++12029++12029+0++12029′ | STL segment 1: VAT at zero rate; 1 item line; sub-total (before VAT) ¡Ì120.29; extended sub-total (before VAT) ¡Ì120.29; VAT amount ¡Ì0; payable sub-total ¡Ì120.29 |
TLR=1+12029+++++12029++12029+0++12029′ | Invoicetrailer: 1 STL segment; lines total amount £120.29; total extended amount £120.29; total extended amount £120.29; total amount (after settlement discount) £120.29; VAT amount £0; total payable £120.29 |
MTR=10′ | End of message 2: 10segments |
MHD=3+INVTLR:9′ | Message 3: invoice file trailer |
TOT=12029+12029+0++12029+1′ | File total amount £120.29; file VAT total amount£0; file total payable £120.29; 1 invoice message in file |
MTR=3′ | End of message 3: 3 segments |
MHD=4+RSGRSG:2′ | Message 4: reconciliation message |
RSG=9+5098765432156′ | |
MTR=3′ | End of message 4: 3 segments |
END=4′ | End of transmission: 4 messages |
EDI Credit Notes Message Structure
Message | Consisting of segments | Repeat as shown below |
---|---|---|
CREHDR Credit Note File Header | MHD = Message Header | One message only, at the start of the file |
CREHDR Credit Note File Header | TYP = Transaction Type Details | |
CREHDR Credit Note File Header | SDT = Supplier Details | |
CREHDR Credit Note File Header | CDT = Customer Details | |
CREHDR Credit Note File Header | DNA = Data Narrative | Repeat as necessary at header level |
CREHDR Credit Note File Header | FIL = File Details | |
CREHDR Credit Note File Header | MTR = Message Trailer | |
CREDIT Credit Note Details | MHD = Message Header | One message for each credit note |
CREDIT Credit Note Details | CLO = Customer’s Location | |
CREDIT Credit Note Details | CRF = Credit Note References | |
CREDIT Credit Note Details | PYT = Settlement terms | Repeat as necessary at message level |
CREDIT Credit Note Details | OIR = Original Invoice References | Repeat for each reference |
CREDIT Credit Note Details | DNA = Data Narrative | Repeat as necessary at message level |
CREDIT Credit Note Details | CLD = Credit Note Line Details | Repeat for each line item |
CREDIT Credit Note Details | DNB = Data Narrative | Repeat if necessary at line level |
CREDIT Credit Note Details | CST = VAT Rate Credit Sub Trailer | Repeat for each VAT rate in the message |
CREDIT Credit Note Details | CTR = Credit Trailer | |
CREDIT Credit Note Details | MTR = Message Trailer | |
VATTLRFile VAT Trailer | MHD = Message Header | One message only, after all CREDIT messages in the file |
VATTLRFile VAT Trailer | VRS = VAT Rate Summary | Repeat for each VAT rate in the file |
VATTLRFile VAT Trailer | MTR = Message Trailer | |
CRETLR Credit Note File Trailer | MHD = Message Header | One message only, at the end of the file |
CRETLR Credit Note File Trailer | TOT = File Totals | |
CRETLR Credit Note File Trailer | MTR = Message Trailer |
EDI Credit Notes Message Sample Record
Message segments | Description |
---|---|
CLD=1+9780711744509++++5+39780+ 198900+Z+0+22++++198900′ | Credit note line 1: identified by ISBN-13; 5 copies; unit credit value £3.978; total credit value £19.89; zero-rated for VAT; reason for credit ‘22’; unit credit value (before discount) £5.99 |
CST=1+Z+0+1+198900+++198900++198900+0++198900′ | VAT rate credit sub-trailer: VAT at zero rate;1 item line; sub-total (before VAT) £19.89; extended sub-total (before VAT) £19.89; VAT amount £0; credit sub-total £19.89 |
CTR=1+198900+++198900++198900+0++198900′ | Credit line trailer: No. of CST segments 1; lines total (before VAT) £19.89; extended sub-total (before VAT) £19.89; total VAT £0; total credit £19.89 |
MTR=7′ | End of message 2: 7 segments |
MHD=3+VATTLR:9′ | Message 3: VAT trailer |
VRS=1+Z+0+198900+198900+0++ 198900′ | VAT rate summary: VAT at zero rate; file sub-total £19.89; VAT sub-total £0; file sub-total payable £19.89 |
MTR=3′ | End of message 3: 3 segments |
MHD=4+CRETLR:9′ | Message 4: credit note file trailer |
TOT=198900+198900+0++198900+1′ | File totals: file total amount £19.89; VAT total amount £0; file total amount £19.89; 1 credit note message |
MTR=3′ | End of message 4: 3 segments |
MHD=5+RSGRSG:2′ | Message 5: reconciliation message |
RSG=9+5098765432156′ | |
MTR=3′ | End of message 5: 3 segments |
END=5′ | End of transmission: 5 messages |