Magentus Practice Management FHIR® Implementation Guide
1.3.2 - Release Australia

Magentus Practice Management FHIR® Implementation Guide - Downloaded Version 1.3.2 See the Directory of published versions

OperationDefinition: Submit Order Operation

Official URL: http://fhir.geniesolutions.io/OperationDefinition/EOrderSubmitOrderOperation Version: 1.3.2
Active as of 2026-04-03 Computable Name: EOrderSubmitOrderOperation

This operation submits a diagnostic order (pathology or imaging/radiology) as a transaction Bundle conforming to the EOrdersSubmitOrderBundle profile. The server validates the Bundle contents and processes the transaction. The response body is a single resource whose resourceType indicates the outcome: a transaction-response Bundle on directed-order success, or an OperationOutcome on error or undirected-order lodgement.

Language: en

URL: [base]/$submit_order

Parameters

UseNameScopeCardinalityTypeBindingDocumentation
INorder1..1Bundle

The order transaction Bundle conforming to the EOrdersSubmitOrderBundle profile. Must be a transaction Bundle containing at minimum: Patient, Organization, Practitioner, PractitionerRole, at least one ServiceRequest (EOrdersDiagnosticRequest, EOrdersPathologyRequest or EOrdersRadiologyRequest), an EOrdersTaskFulfillmentGroup and at least one EOrdersTaskFulfillmentRequest.

OUTreturn1..1Resource

The response resource. A transaction-response Bundle when the order is directed and successfully processed. An OperationOutcome (severity error/fatal) when the order fails validation or cannot be processed. An OperationOutcome (severity information) when the order is undirected — all fulfillment Tasks lack an owner and the order has been lodged for later routing. The caller distinguishes between cases by inspecting resourceType and, for OperationOutcome, issue.severity.

Notes:

Response behaviour

The HTTP response body is always a single resource. Check resourceType to determine the outcome:

resourceType Condition Details
Bundle (type transaction-response) Order is directed and successfully processed All fulfillment Tasks had an owner and the transaction committed.
OperationOutcome (severity error or fatal) Order failed validation or cannot be processed issue.details describes the problem; do not retry without correcting the reported issues.
OperationOutcome (severity information) Order is undirected — no fulfillment Task has an owner The order has been lodged for later routing. This is not an error; no corrective action is required.

Response examples

Example Description
Directed Order Success Transaction-response Bundle returned when all fulfillment Tasks have an owner and the order is successfully processed.
Error Response OperationOutcome returned when the submitted Bundle fails validation or cannot be processed.
Undirected Order Response Informational OperationOutcome returned when no fulfillment Task has an owner; the order has been lodged for later routing.

Exceptions

HTTP 400 — InvalidRequestException

Exception Message
Not called on DEFAULT partition $submit_order is only available on the DEFAULT partition
Missing order parameter order parameter is required
Server base URL unavailable Unable to rewrite bundle entry fullUrls: server base URL is unavailable (server configuration issue, not a client error — contact the server administrator)

HTTP 403 — ForbiddenOperationException

Exception Message Trigger Conditions
Missing/invalid placer scope Missing or invalid placer scope in bearer token (wraps UnauthorizedPartitionException) No APPROVED_SCOPES_ATTRIBUTE on request. Not exactly one placer/ scope. Token has > 20 partition/ scopes.

HTTP 422 — UnprocessableEntityException

Exception Message
Missing placer-family tag Task and ServiceRequest entries must include a placer-family tag (system=...)
Multiple placer-family tags [ResourceType] must have exactly one placer-family tag but found N: [codes]
Placer tag mismatch Placer-family tag '...' does not match expected placer '...' from token scope
Missing fulfillment group Task Bundle must contain an EOrdersTaskFulfillmentGroup Task (meta.tag system=eorders-tag code=fulfillment-task-group)
Empty Task.owner reference EOrdersTaskFulfillmentGroup Task.owner must contain a non-empty Organization reference
Non-Organization Task.owner EOrdersTaskFulfillmentGroup Task.owner must reference an Organization (e.g. 'Organization/{id}'), got: '...'
Duplicate requisition An order with this requisition identifier has already been submitted. Use a new requisition identifier for a new order.
Bundle entry missing request.url and id Bundle entry for [Type] has no request.url and no resource id — cannot execute PUT transaction

HTTP 200 — OperationOutcome

Note: Not an exception — returned as success.

Condition Response
IG profile validation failure Returns OperationOutcome with error/fatal issues rather than throwing.