How it worksPricingDocsTry the decoder

CleanEDI REST API.

The CleanEDI API lets you submit business objects for EDIFACT generation, configure webhooks for inbound delivery, manage trading partners, and replay messages. The API is in active development.

API in development
The endpoints below show what the API will look like. They are not yet available in production. If you need early API access for integration planning, contact us at hello@cleanedi.com.
Base URL
https://api.cleanedi.com

All API requests are made to this base URL. HTTPS only. HTTP requests are rejected.

Authentication
Authorization: Bearer {api-key}

API keys are issued during onboarding. Include your key in the Authorization header on every request.

POST/v1/messages/outboundIn development

Submit a business object for conversion to EDIFACT and delivery to a trading partner.

{
  "messageType": "INVOIC",
  "tradingPartnerId": "partner-acme-corp",
  "data": {
    "invoiceNumber": "INV-2026-001",
    "invoiceDate": "2026-08-20",
    "purchaseOrderRef": "PO-48291",
    "lines": [
      {
        "gtin": "4012345678901",
        "quantity": 100,
        "unitPrice": 29.99,
        "currency": "AUD"
      }
    ]
  }
}
GET/v1/messages/{messageId}In development

Retrieve a processed message by ID, including its status, raw EDIFACT, and normalised output.

POST/v1/messages/{messageId}/replayIn development

Replay a previously processed message. Useful for re-delivering to a downstream system after an outage.

GET/v1/partnersIn development

List all configured trading partners for your account.

POST/v1/partners/createIn development

Create a new trading partner configuration.

POST/v1/webhooksIn development

Register a webhook endpoint to receive inbound message events.

Inbound message delivery.

When CleanEDI receives an inbound EDIFACT message from a trading partner, it delivers a webhook event to your registered endpoint. The payload is always clean JSON regardless of the original EDIFACT format.

Example webhook payload - inbound ORDERS
POST https://your-system.com/webhooks/cleanedi
X-CleanEDI-Signature: sha256={hmac-signature}
Content-Type: application/json

{
  "eventType": "message.received",
  "messageId": "msg_01J8X9Y2Z3",
  "messageType": "ORDERS",
  "tradingPartnerId": "partner-acme-corp",
  "receivedAt": "2026-08-20T10:00:00Z",
  "data": {
    "orderId": "PO-48291",
    "orderDate": "2026-08-20",
    "buyer": {
      "gln": "5412345000013",
      "name": "ACME Corp"
    },
    "lines": [
      {
        "lineNumber": 1,
        "gtin": "4012345678901",
        "quantity": 100,
        "unitPrice": 29.99,
        "currency": "AUD"
      }
    ]
  }
}

Need early API access?

If you are building an integration and need API access before general availability, get in touch. We work with early access customers directly.