createOrderWorkflow - Medusa Core Workflows Reference
This documentation provides a reference to the createOrderWorkflow
. It belongs to the @medusajs/medusa/core-flows
package.
This workflow creates an order. It's used by the Create Draft Order Admin API Route, but you can also use it to create any order.
This workflow has a hook that allows you to perform custom actions on the created order. For example, you can pass under additional_data
custom data that
allows you to create custom data models linked to the order.
You can also use this workflow within your customizations or your own custom workflows, allowing you to wrap custom logic around creating an order. For example, you can create a workflow that imports orders from an external system, then uses this workflow to create the orders in Medusa.
Source CodeExamples#
Steps#
Workflow Hook
Step conditioned by when
Input#
CreateOrderWorkflowInput
CreateOrderWorkflowInputThe data to create an order, along with custom data that's passed to the workflow's hooks.
CreateOrderWorkflowInput
CreateOrderWorkflowInputregion_id
stringOptionalThe associated region's ID.
region_id
stringOptionalcustomer_id
stringOptionalThe associated customer's ID.
customer_id
stringOptionalsales_channel_id
stringOptionalThe associated sales channel's ID.
sales_channel_id
stringOptionalstatus
stringOptionalThe status of the order.
status
stringOptionalemail
stringOptionalThe email of the customer that placed the order.
email
stringOptionalcurrency_code
stringOptionalThe currency code of the order.
currency_code
stringOptionalshipping_address_id
stringOptionalThe associated shipping address's ID.
shipping_address_id
stringOptionalbilling_address_id
stringOptionalThe associated billing address's ID.
billing_address_id
stringOptionalThe shipping address of the order.
The billing address of the order.
no_notification
booleanOptionalWhether the customer should receive notifications about
order updates.
no_notification
booleanOptionalThe items of the order.
The shipping methods of the order.
The credit lines of the order.
The transactions of the order.
metadata
null | Record<string, unknown>OptionalHolds custom data in key-value pairs.
metadata
null | Record<string, unknown>Optionalpromo_codes
string[]OptionalThe promo codes of the order.
promo_codes
string[]Optionaladditional_data
Record<string, unknown>OptionalAdditional data that can be passed through the additional_data
property in HTTP requests.
Learn more in this documentation.
additional_data
Record<string, unknown>Optionaladditional_data
property in HTTP requests.
Learn more in this documentation.Output#
OrderDTO
OrderDTOThe order details.
OrderDTO
OrderDTOid
stringThe ID of the order.
id
stringversion
numberThe version of the order.
version
numberdisplay_id
numberThe order's display ID.
display_id
numberstatus
OrderStatusThe status of the order.
status
OrderStatuscurrency_code
stringThe currency of the order
currency_code
stringcreated_at
string | DateWhen the order was created.
created_at
string | Dateupdated_at
string | DateWhen the order was updated.
updated_at
string | Dateoriginal_item_total
BigNumberValueThe original item total of the order.
original_item_total
BigNumberValueoriginal_item_subtotal
BigNumberValueThe original item subtotal of the order.
original_item_subtotal
BigNumberValueoriginal_item_tax_total
BigNumberValueThe original item tax total of the order.
original_item_tax_total
BigNumberValueitem_total
BigNumberValueThe item total of the order.
item_total
BigNumberValueitem_subtotal
BigNumberValueThe item subtotal of the order.
item_subtotal
BigNumberValueitem_tax_total
BigNumberValueThe item tax total of the order.
item_tax_total
BigNumberValueoriginal_total
BigNumberValueThe original total of the order.
original_total
BigNumberValueoriginal_subtotal
BigNumberValueThe original subtotal of the order.
original_subtotal
BigNumberValueoriginal_tax_total
BigNumberValueThe original tax total of the order.
original_tax_total
BigNumberValuetotal
BigNumberValueThe total of the order.
total
BigNumberValuesubtotal
BigNumberValueThe subtotal of the order. (Excluding taxes)
subtotal
BigNumberValuetax_total
BigNumberValueThe tax total of the order.
tax_total
BigNumberValuediscount_subtotal
BigNumberValueThe discount subtotal of the order.
discount_subtotal
BigNumberValuediscount_total
BigNumberValueThe discount total of the order.
discount_total
BigNumberValuediscount_tax_total
BigNumberValueThe discount tax total of the order.
discount_tax_total
BigNumberValuegift_card_total
BigNumberValueThe gift card total of the order.
gift_card_total
BigNumberValuegift_card_tax_total
BigNumberValueThe gift card tax total of the order.
gift_card_tax_total
BigNumberValueshipping_total
BigNumberValueThe shipping total of the order.
shipping_total
BigNumberValueshipping_subtotal
BigNumberValueThe shipping subtotal of the order.
shipping_subtotal
BigNumberValueshipping_tax_total
BigNumberValueThe shipping tax total of the order.
shipping_tax_total
BigNumberValueoriginal_shipping_total
BigNumberValueThe original shipping total of the order.
original_shipping_total
BigNumberValueoriginal_shipping_subtotal
BigNumberValueThe original shipping subtotal of the order.
original_shipping_subtotal
BigNumberValueoriginal_shipping_tax_total
BigNumberValueThe original shipping tax total of the order.
original_shipping_tax_total
BigNumberValueraw_original_item_total
BigNumberRawValueThe raw original item total of the order.
raw_original_item_total
BigNumberRawValueraw_original_item_subtotal
BigNumberRawValueThe raw original item subtotal of the order.
raw_original_item_subtotal
BigNumberRawValueraw_original_item_tax_total
BigNumberRawValueThe raw original item tax total of the order.
raw_original_item_tax_total
BigNumberRawValueraw_item_total
BigNumberRawValueThe raw item total of the order.
raw_item_total
BigNumberRawValueraw_item_subtotal
BigNumberRawValueThe raw item subtotal of the order.
raw_item_subtotal
BigNumberRawValueraw_item_tax_total
BigNumberRawValueThe raw item tax total of the order.
raw_item_tax_total
BigNumberRawValueraw_original_total
BigNumberRawValueThe raw original total of the order.
raw_original_total
BigNumberRawValueraw_original_subtotal
BigNumberRawValueThe raw original subtotal of the order.
raw_original_subtotal
BigNumberRawValueraw_original_tax_total
BigNumberRawValueThe raw original tax total of the order.
raw_original_tax_total
BigNumberRawValueraw_total
BigNumberRawValueThe raw total of the order.
raw_total
BigNumberRawValueraw_subtotal
BigNumberRawValueThe raw subtotal of the order. (Excluding taxes)
raw_subtotal
BigNumberRawValueraw_tax_total
BigNumberRawValueThe raw tax total of the order.
raw_tax_total
BigNumberRawValueraw_discount_total
BigNumberRawValueThe raw discount total of the order.
raw_discount_total
BigNumberRawValueraw_discount_tax_total
BigNumberRawValueThe raw discount tax total of the order.
raw_discount_tax_total
BigNumberRawValueraw_gift_card_total
BigNumberRawValueThe raw gift card total of the order.
raw_gift_card_total
BigNumberRawValueraw_gift_card_tax_total
BigNumberRawValueThe raw gift card tax total of the order.
raw_gift_card_tax_total
BigNumberRawValueraw_shipping_total
BigNumberRawValueThe raw shipping total of the order.
raw_shipping_total
BigNumberRawValueraw_shipping_subtotal
BigNumberRawValueThe raw shipping subtotal of the order.
raw_shipping_subtotal
BigNumberRawValueraw_shipping_tax_total
BigNumberRawValueThe raw shipping tax total of the order.
raw_shipping_tax_total
BigNumberRawValueraw_original_shipping_total
BigNumberRawValueThe raw original shipping total of the order.
raw_original_shipping_total
BigNumberRawValueraw_original_shipping_subtotal
BigNumberRawValueThe raw original shipping subtotal of the order.
raw_original_shipping_subtotal
BigNumberRawValueraw_original_shipping_tax_total
BigNumberRawValueThe raw original shipping tax total of the order.
raw_original_shipping_tax_total
BigNumberRawValueThe active order change, if any.
region_id
stringOptionalThe ID of the region the order belongs to.
region_id
stringOptionalcustomer_id
stringOptionalThe ID of the customer on the order.
customer_id
stringOptionalsales_channel_id
stringOptionalThe ID of the sales channel the order belongs to.
sales_channel_id
stringOptionalemail
stringOptionalThe email of the order.
email
stringOptionalThe associated shipping address.
The associated billing address.
The associated order details / line items.
The associated shipping methods
The tramsactions associated with the order
The credit lines for an order
The summary of the order totals.
metadata
null | Record<string, unknown>OptionalHolds custom data in key-value pairs.
metadata
null | Record<string, unknown>Optionalcanceled_at
string | DateOptionalWhen the order was canceled.
canceled_at
string | DateOptionalHooks#
Hooks allow you to inject custom functionalities into the workflow. You'll receive data from the workflow, as well as additional data sent through an HTTP request.
Learn more about Hooks and Additional Data.
orderCreated#
This hook is executed after the order is created. You can consume this hook to perform custom actions on the created order.
Example
Input
Handlers consuming this hook accept the following input.
input
objectThe input data for the hook.
input
objectorder
OrderDTOThe order details.
order
OrderDTOadditional_data
Record<string, unknown> | undefinedAdditional data that can be passed through the additional_data
property in HTTP requests.
Learn more in this documentation.
additional_data
Record<string, unknown> | undefinedadditional_data
property in HTTP requests.
Learn more in this documentation.