Skip to main content

deliverOutboundTransaction

Creates a new outbound EDI transaction for an order and immediately attempts to deliver it to Orderful synchronously. This combines the create and schedule operations into a single mutation for convenience.

Requirements

  • User must have edi:deliver_outbound_transaction permission
  • Order must exist and belong to the brand
  • Integration must exist and be valid
  • Transaction type must be a valid EDI transaction type (e.g., "856", "855", "810")

Transaction Creation and Delivery

  • If transactionId is provided, it will be used as the transaction ID
  • If transactionId is not provided, a new UUID will be generated
  • The transaction will be created with direction outbound
  • The transaction will immediately be sent to Orderful synchronously
  • Delivery status and errors will be available in the response

Message Data

  • message is optional and should contain the full transaction message as a Hash
  • If message is not provided, it will be generated using the transaction mapping factory
  • The message will be stored in the transaction's transaction_data field

Error Responses

  • ValidationError: Business rule violations including:
    • Order not found
    • Integration not found
    • Order does not belong to the brand
    • Transaction already exists (if transactionId provided)
  • PermissionError: Insufficient permissions for transaction delivery
  • Delivery errors will be included in the transaction's deliveryErrors field
deliverOutboundTransaction(
input: DeliverOutboundTransactionInput!
): Transaction!

Arguments

deliverOutboundTransaction.input ● DeliverOutboundTransactionInput! non-null input

Parameters for DeliverOutboundTransaction

Type

Transaction object

Represents an Orderful EDI transaction record.