Operations teams
“A supplier operations team can see partner setup, validation, exceptions, and QuickBooks handoff in one workspace instead of chasing spreadsheets.”
SDKs
Fastest way to test your API key and payload shape from any terminal.
curl -X POST https://api.signaledi.com/api/v1/documents/outbound \
-H "Authorization: Bearer $SIGNALEDI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"partnerId": "your-partner-id",
"documentTypeCode": "850",
"payload": {
"purchaseOrderNumber": "PO-1042",
"shipTo": {
"id": "DC-01",
"name": "RetailMart DC 01"
},
"lines": [
{
"lineNumber": 1,
"sku": "SKU-100",
"quantity": 24,
"unitPrice": 12.5
}
]
}
}'Use fetch or your HTTP client in serverless functions, Express, or Next.js routes.
const res = await fetch("https://api.signaledi.com/api/v1/documents/outbound", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.SIGNALEDI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
partnerId: "your-partner-id",
documentTypeCode: "850",
payload: {
purchaseOrderNumber: "PO-1042",
shipTo: { id: "DC-01", name: "RetailMart DC 01" },
lines: [{ lineNumber: 1, sku: "SKU-100", quantity: 24, unitPrice: 12.5 }],
},
}),
});
const data = await res.json(); // { ok: true, data: { documentId, status: "queued" } }Works with requests, httpx, or any HTTP library — ideal for data pipelines and Django/FastAPI backends.
import os
import requests
r = requests.post(
"https://api.signaledi.com/api/v1/documents/outbound",
headers={"Authorization": f"Bearer {os.environ['SIGNALEDI_API_KEY']}"},
json={
"partnerId": "your-partner-id",
"documentTypeCode": "850",
"payload": {
"purchaseOrderNumber": "PO-1042",
"shipTo": {"id": "DC-01", "name": "RetailMart DC 01"},
"lines": [{"lineNumber": 1, "sku": "SKU-100", "quantity": 24, "unitPrice": 12.5}],
},
},
)
print(r.json())Standard library net/http — compile a small binary for high-throughput outbound workers.
package main
import (
"net/http"
"os"
"strings"
)
func main() {
body := strings.NewReader(`{"partnerId":"your-partner-id","documentTypeCode":"850","payload":{"purchaseOrderNumber":"PO-1042"}}`)
req, _ := http.NewRequest("POST", "https://api.signaledi.com/api/v1/documents/outbound", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("SIGNALEDI_API_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
}FAQ
Use the REST API directly with your HTTP client today. The @signaledi/sdk package mirrors /api/v1 endpoints — see the API reference for installation.
Authorization: Bearer with your SIGNALEDI_API_KEY environment variable.
All samples POST an 850 purchase order to /api/v1/documents/outbound — swap documentTypeCode and payload for 856, 810, or other types.
Trust & proof
SignalEDI keeps the public promise consistent across every route: real-time processing, transparent monthly plans, no per-document fees, QuickBooks-friendly handoffs, and core healthcare X12 workflows on paid plans.
Operations teams
“A supplier operations team can see partner setup, validation, exceptions, and QuickBooks handoff in one workspace instead of chasing spreadsheets.”
Healthcare billing
“837, 835, and 270/271 workflows are explained in plain English, with HIPAA-aware handling and a documented BAA review path for diligence.”
Developer teams
“JSON/CSV in and X12 out, with API docs, webhooks, real-time status, and validation responses that make EDI feel like modern infrastructure.”
© 2026 CCCM Consulting LLC. All rights reserved.