Going Live with Flxpoint EDI
Last updated
Going Live with Flxpoint EDI
Purpose
The path from first contact to production for a trading partner exchanging EDI with Flxpoint: connection, identifiers, testing, document order, checks, and what to do when a file is rejected.
How It Works
Flxpoint exchanges X12 files with you through two folders on an SFTP server. Flxpoint writes purchase orders (850) and functional acknowledgements (997) into one folder and reads your documents (846, 855, 856, 810, 870, and your 997s) from the other. Nothing is pushed in real time: Flxpoint reads and writes files when a job on the Flxpoint source runs, on the schedule set for that job. Going live means agreeing on the connection and the interchange IDs, running test orders end to end, checking your files, and then switching to production values on both sides at the same time.
The Path to Production
| Step | Who | What happens |
|---|---|---|
| 1. First contact | You / the Flxpoint customer | The Flxpoint customer adds you as a source in their Flxpoint account and loads an initial set of your items with SKU and cost, so a test order can be sent. Email Flxpoint's EDI team at connect@flxpoint.com with your company name, your interchange ID (format ZZ:12345678), the documents you will exchange, and your server details if you host the SFTP. |
| 2. Connection | You + Flxpoint | Agree the SFTP server, credentials and the two folders (see Connectivity). |
| 3. Identifiers | You + Flxpoint | Exchange qualifiers and IDs for both sides (see Identifiers). |
| 4. Testing | You + Flxpoint | Flxpoint sends test orders; you answer each with the documents you will send in production. Check every file in Flxpector before you upload it. |
| 5. Go live | You + Flxpoint | Work through the Go-Live Checklist, switch to production values together, and watch the first production files through. |
Once these first steps are done, an EDI specialist is assigned to help you through testing.
Connectivity
Protocol
Flxpoint exchanges EDI files over SFTP. AS2 and VAN connections are not supported.
Server and folders
The SFTP server is either an account Flxpoint provides or a server you host. If you host it, send Flxpoint the host, port, username, password, and the two folder paths.
| Folder | Direction | Contents |
|---|---|---|
Inbound (/in on a Flxpoint-provided account) | You → Flxpoint | Your 846, 855, 856, 810 and 870 files, and your 997s for Flxpoint's 850s |
Outbound (/out on a Flxpoint-provided account) | Flxpoint → You | Flxpoint's 850 purchase orders and the 997s for the files you sent |
- Keep the two folders separate. Flxpoint reads every file it finds in the inbound folder.
- One inbound folder holds every document type. Flxpoint reads the transaction set (ST01) inside each file and routes it to the matching job, so you do not need a folder per document.
- Only the inbound folder itself is read, not its subfolders. An archive subfolder inside the inbound folder is safe.
- What happens to your files after Flxpoint reads them is a setting on the Flxpoint source: by default they are left where they are; Flxpoint can instead move them to a folder you name, delete them, or rename them with a suffix (
.processedunless another suffix is set). Ask which one your connection uses before you build your own cleanup. - Files that were rejected, and files that hold only 997s, are never moved, deleted or renamed, whatever that setting is: the setting only acts on files that carried a document Flxpoint applied. A file still in the inbound folder on a "move" or "delete" connection is worth a look.
- Flxpoint does not move or delete files in the outbound folder. Download them and move them to an archive folder (for example
/out/archive) rather than deleting them, so both sides can look a file up later.
File names
- Flxpoint's 850s are named
<PO number>-850-<9-digit control number>.edi, one purchase order per file. - Flxpoint's 997s are named
997_followed by the name of the file they acknowledge, so you can match each 997 to the file you sent. - Your files can use any name, but every file needs a new name. Flxpoint skips a file whose name matches one it already downloaded from you since two days before the job's previous run (upper and lower case are treated as the same). A corrected file re-sent under the old name can be skipped.
- Keep the upload time as the file's modified time. Flxpoint only looks at files modified after one day before the job's previous run (seven days back on a job's very first run). A file uploaded with an older, preserved timestamp can fall outside that window and never be read.
Encoding and delimiters
- Send plain ASCII or UTF-8. Flxpoint reads every inbound file as UTF-8; a byte from another encoding is replaced, which can corrupt the segment terminator and with it the whole file.
- Flxpoint's 850s end segments with
~and separate elements with*. The sub-element separator in ISA16 is set per connection, so read it from ISA16 instead of assuming one. - Flxpoint's 997 reuses the delimiters of the file it acknowledges, segment terminator included.
When files move
Flxpoint picks up and drops files when the jobs on the Flxpoint source run, on the schedule configured for each job; there is no continuous polling. The Flxpoint EDI standard recommends exchanging every transaction hourly, and at least daily, and asks for invoices within 24 hours of shipment.
- A run of any inbound job downloads all new files in the inbound folder and writes the 997 for each file it can read, even when that file belongs to another job; the other job picks it up on its own run.
- The job that sends orders writes each 850 to the outbound folder and retries a failed upload. Each 850 is checked by parsing it back before it is uploaded.
Identifiers (ISA/GS)
Each Flxpoint source stores four values: Flxpoint's qualifier and ID, and your qualifier and ID. The Flxpoint EDI standard uses qualifier ZZ (Mutually Defined); the IDs are agreed at setup. Send yours by email in the form ZZ:12345678 and confirm the ID Flxpoint will use before testing starts.
What Flxpoint's 850 carries
| Element | Value on Flxpoint's 850 |
|---|---|
| ISA01 / ISA03 | 00 / 00 |
| ISA05 / ISA06 | Flxpoint's qualifier / Flxpoint's ID, right-padded to 15 characters |
| ISA07 / ISA08 | Your qualifier / your ID, right-padded to 15 characters |
| ISA11 | U |
| ISA12 | 00401 (00501 when the connection is set to 005010) |
| ISA13 | Sequential control number for your connection, 9 digits; it restarts at 1 after 999999999 |
| ISA14 | 0 — no TA1 is requested |
| ISA15 | P, or T while the connection is set to test (see Test vs Production) |
| GS01 | PO |
| GS02 / GS03 | Flxpoint's ID / your ID |
| GS06 | The ISA13 number without its leading zeros (at least 4 digits) |
| GS08 | 004010VICS (or 005010 when the connection is set to it) |
If Flxpoint re-sends the same purchase order, the file keeps its original control number and file name, so a repeated ISA13 on an 850 means a re-send of that order.
What your files should carry
- Mirror the 850: your qualifier and ID in ISA05/ISA06 and GS02, Flxpoint's in ISA07/ISA08 and GS03, exactly as they appear on the 850s you receive.
- ISA13: increment it for every interchange. Flxpoint does not reject a repeated ISA13, but unique numbers are what let both sides find a file when something needs research. Flxpector flags two interchanges in the same file that share an ISA13.
- ISA09/ISA10: send the real date and time. When several 846 files arrive between two runs, Flxpoint uses the one with the latest ISA date and time (unless your source is set to read inventory from multiple files).
ISA*00* *00* *ZZ*FLXPOINTID *ZZ*SUPPLIERID *261006*1200*U*00401*000000123*0*P*:~GS*PO*FLXPOINTID*SUPPLIERID*20261006*1200*0123*X*004010VICS~
Envelope of an 850 from Flxpoint (placeholder IDs). Your 855, 856 and 810 swap the two IDs.
Test vs Production
The ISA15 usage indicator works differently in the two directions.
| Direction | How ISA15 is used |
|---|---|
| Flxpoint → you (850) | Set per connection. It is P unless Flxpoint sets the connection to test, in which case the 850s carry T. |
| You → Flxpoint (846, 855, 856, 810, 870) | Not read. A file with T is processed exactly like a file with P. |
⚠️ A test file you send is processed as real data. A test 846 updates the stock levels of the items in it; a test 855, 856 or 810 updates the order whose PO number it carries. During testing, send documents only for the test orders Flxpoint sends you, and only send inventory you are happy to see live.
Flxpector shows a Test Mode badge on a file whose ISA15 is T, so you can see at a glance which value a file carries before you upload it.
Document Flow
The order of documents for a drop-ship order on a Flxpoint Standard EDI connection:
You → [846 Inventory] → Flxpoint (on your own schedule, independent of orders) Flxpoint → [850 Purchase Order] → You You → [997 for the 850] → Flxpoint You → [855 PO Acknowledgement] → Flxpoint You → [856 Ship Notice] → Flxpoint You → [810 Invoice] → Flxpoint Flxpoint → [997] → You (for every file of yours Flxpoint can read)
| Document | Direction | How Flxpoint uses it |
|---|---|---|
| 846 Inventory Advice | You → Flxpoint | Updates stock for the items in the file. Without the multiple-files setting, only the newest 846 (by ISA date and time) since the last run is applied |
| 850 Purchase Order | Flxpoint → You | One purchase order per file |
| 997 Functional Ack | You → Flxpoint | The Flxpoint EDI standard asks for one per 850. Flxpoint accepts it but does not change the order from it; the 855 is what acknowledges the order |
| 855 PO Acknowledgement | You → Flxpoint | Marks each line acknowledged or canceled. BAK03 must equal the PO number exactly, upper and lower case included |
| 856 Ship Notice | You → Flxpoint | Records the shipment and tracking against the order. The PO number is matched ignoring case |
| 810 Invoice | You → Flxpoint | Records the invoice against the order. The PO number must match exactly. The standard asks for invoices only for shipped items |
| 870 Order Status | You → Flxpoint | Optional: cancels items on an order |
| 997 Functional Ack | Flxpoint → You | Written for each of your files that Flxpoint reads successfully |
Documents outside this list are not processed on a Standard EDI connection — for example the 860 Purchase Order Change. A file that contains one is not applied, including any supported transactions in the same file, and no 997 comes back for it.
Return the PO number and the item identifiers exactly as they appear on the 850: they are how Flxpoint connects your 855, 856 and 810 to the order.
Checking Files with Flxpector
Flxpector is the EDI inspector on this site. Run every test file through it before you upload, and keep using it after go-live whenever a file is rejected. It checks:
- Delimiters and terminator — the separators declared in ISA, and a segment terminator damaged by an encoding conversion.
- Envelope — ISA and GS formats (ISA06/ISA08 padded to 15 characters, YYMMDD/HHMM dates and times, GS01 matching ST01, GS07 =
X, the GS08 version), and the ISA15 value. - Control numbers and counts — SE02 = ST02, GE02 = GS06, IEA02 = ISA13, and the SE01, GE01 and IEA01 counts; a repeated ISA13 inside one file is flagged as a warning.
- Transaction rules — required segments and elements, allowed codes, lengths and formats for the 846, 850, 855, 856, 810, 870 and 997, following the rules of Flxpoint's parser. An unsupported transaction set (such as the 860) is reported as an unknown transaction type.
- Cross-check with your 850 — for an 855, 856 or 810, paste the original 850 and Flxpector compares the PO number, the item identifiers, the quantities, the shipping service level and which order lines are covered.
Flxpector checks the file, not the connection. It cannot tell whether the PO is still open in Flxpoint, whether your IDs match what was agreed, or whether the file reached the right folder. Those are covered by the checklist below.
See the Flxpector Validation Reference for every rule.
Go-Live Checklist
Connection
- Both sides have tested the SFTP login, and Flxpoint can read the inbound folder and write the outbound folder.
- Inbound and outbound are different folders.
- You know what Flxpoint does with your files after reading them (leave, move, delete or rename), and your own cleanup does not fight it.
- Your process gives every file a new name and keeps the upload time as the modified time.
Identifiers and envelope
5. Your ISA05/ISA06/GS02 and Flxpoint's ISA07/ISA08/GS03 match the 850s you received, character for character.
6. ISA13 increments for every interchange and IEA02 matches it.
7. Your production version is 004010VICS in GS08 and 00401 in ISA12.
Test orders 8. Every test 850 was answered with the documents you will send in production: 997, 855, 856 and 810. 9. Each of your test files produced a 997 from Flxpoint in the outbound folder. 10. Each test order shows the acknowledgement, the shipment with tracking, and the invoice in Flxpoint (the Flxpoint customer confirms this). 11. Every file passes Flxpector with no errors, and your 855, 856 and 810 pass the cross-check against their 850.
Cutover
12. Flxpoint switches its 850s to P, and you switch your own values to production at the same time. If you use different IDs for test and production, change them on both sides together.
13. No test file is waiting unread in the inbound folder at cutover: Flxpoint does not tell test files from production files.
14. Watch the first production order through 850 → 855 → 856 → 810 before relying on the flow.
When a File Is Rejected
How a rejection shows up
| What you see | What it means |
|---|---|
| No 997 in the outbound folder after the next job run | Flxpoint could not read the file, or a transaction in it failed to parse, or it contains a transaction set Flxpoint does not process. The whole file was rejected and nothing in it was applied |
| A 997 arrived, but the order did not change | The file was read, but a transaction could not be applied, for example a PO number that does not match an open order exactly, or item identifiers that are not on the 850 |
| No 997, and Flxpoint has no record of the file at all | Flxpoint did not pick it up: check the folder, the file name (already used?) and the file's modified time. A file whose first transaction set is one Flxpoint does not recognize, such as the 860, can also leave no record. By default Flxpoint leaves files in the inbound folder after reading them, so a file still sitting there is not, on its own, a sign it was missed |
A 997 confirms that Flxpoint received and could read your file. It does not confirm the order was updated.
Flxpoint records the error message against the file and on the job's run, so the Flxpoint customer, or connect@flxpoint.com, can tell you exactly which segment failed. Include the file name when you ask.
Fixing and resending
- Run the file through Flxpector and fix every error. For an 855, 856 or 810, use the cross-check against the original 850.
- Upload the corrected file under a new file name. A file that failed is not retried, and a file with a name Flxpoint has already downloaded can be skipped.
- Wait for the next job run and confirm the 997 for the new file appears in the outbound folder.
- Confirm the order changed in Flxpoint. A 997 alone does not prove it.
Most rejections fail the whole file, not just one transaction: a structural error, an unsupported segment or an unsupported transaction set anywhere in the file stops all of it. On an 846, some item-level problems skip just that item and the rest of the file is applied. See Common EDI Errors for the most frequent causes and fixes.
Common Mistakes
⚠️ Sending test files with T and expecting them to be ignored. Flxpoint does not read ISA15 on your files: a test file changes real data.
⚠️ Re-sending a corrected file under the same name. Use a new name every time, or the correction can be skipped.
⚠️ Combining a supported document with an unsupported one in one file. One unsupported transaction set rejects the entire file.
⚠️ Treating the 997 as proof the order updated. It proves the file was read. Check the order.
⚠️ Changing the PO number's case or formatting. The 855 and 810 match the PO number exactly; send it back as it appears in BEG03 of the 850.
Tip: Keep a copy of every file you send and every file you receive. When something needs research, the file name and ISA13 are the fastest way for both sides to find the same transmission.
EDI Support: connect@flxpoint.com
Something unclear?
Ask our AI assistant — it knows this spec and can explain any segment, error, or rule in plain English.
Was this page helpful?
Can't find what you need?