Send raw UBL
For callers who already generate compliant PINT OM UBL themselves.
For callers who already generate compliant PINT OM UBL and want to skip the JSON-to-UBL build step that Create an invoice handles. You keep control of the document; you also take on responsibility for keeping it compliant as the Oman specification evolves. Once accepted, the same tracking and webhook model applies — see Get a transaction.
/v1/api/documents| Field | Type | Description | |
|---|---|---|---|
| sender_id | uuid | required | The taxpayer issuing the document |
| document | string | required | The complete UBL XML, as a JSON string |
| receiver_scheme | string | optional | Peppol scheme, e.g. 0248. Read from the document if omitted |
| receiver_id | string | optional | Receiver identifier. Read from the document if omitted |
| metadata | object | optional | Your own key–value pairs, returned unchanged on the transaction |
| webhook_url | string | optional | Override your registered webhook for this document only |
You don't declare the profile. SUMU reads it from the document — the root element, the
CustomizationID and the type code together determine which Oman rule set applies. Declaring it
yourself would let a mismatch pass validation here and be refused by the receiving Access Point, so
it's resolved rather than trusted. profile and document_type_code are echoed back on the response
so you can confirm the document was interpreted as intended.