OrderService
constructor
Parameters
__namedParametersInjectedDependenciesRequiredProperties
manager_EntityManagerRequiredtransactionManager_undefined | EntityManagerRequired__container__anyRequiredEventsobjectRequiredEvents.GIFT_CARD_CREATEDstringRequiredDefault: "order.gift_card_created"
Events.PAYMENT_CAPTUREDstringRequiredDefault: "order.payment_captured"
Events.PAYMENT_CAPTURE_FAILEDstringRequiredDefault: "order.payment_capture_failed"
Events.SHIPMENT_CREATEDstringRequiredDefault: "order.shipment_created"
Events.FULFILLMENT_CREATEDstringRequiredDefault: "order.fulfillment_created"
Events.FULFILLMENT_CANCELEDstringRequiredDefault: "order.fulfillment_canceled"
Events.RETURN_REQUESTEDstringRequiredDefault: "order.return_requested"
Events.ITEMS_RETURNEDstringRequiredDefault: "order.items_returned"
Events.RETURN_ACTION_REQUIREDstringRequiredDefault: "order.return_action_required"
Events.REFUND_CREATEDstringRequiredDefault: "order.refund_created"
Events.REFUND_FAILEDstringRequiredDefault: "order.refund_failed"
Events.SWAP_CREATEDstringRequiredDefault: "order.swap_created"
Events.PLACEDstringRequiredDefault: "order.placed"
Events.UPDATEDstringRequiredDefault: "order.updated"
Events.CANCELEDstringRequiredDefault: "order.canceled"
Events.COMPLETEDstringRequiredDefault: "order.completed"
featureFlagRouter_FlagRouterRequiredremoteLink_RemoteLinkRequired__configModule__Record<string, unknown>__moduleDeclaration__Record<string, unknown>Accessors
activeManager_
Returns
EntityManagerEntityManagerRequiredMethods
withTransaction
Parameters
transactionManagerEntityManagerReturns
thisthisRequiredshouldRetryTransaction_
Parameters
errRecord<string, unknown> | objectRequiredReturns
booleanbooleanRequiredatomicPhase_
Wraps some work within a transactional block. If the service already has a transaction manager attached this will be reused, otherwise a new transaction manager is created.
Type Parameters
TResultobjectRequiredTErrorobjectRequiredParameters
work(transactionManager: EntityManager) => Promise<TResult>RequiredisolationOrErrorHandlerIsolationLevel | (error: TError) => Promise<void | TResult>maybeErrorHandlerOrDontFail(error: TError) => Promise<void | TResult>Returns
PromisePromise<TResult>Requiredlist
Parameters
Returns
listAndCount
Parameters
Returns
transformQueryForTotals
Parameters
Returns
retrieve
Gets an order by id.
Parameters
orderIdstringRequiredDefault: {}
Returns
retrieveLegacy
Parameters
Default: {}
Returns
retrieveWithTotals
Parameters
orderIdstringRequiredDefault: {}
contextTotalsContextRequiredDefault: {}
Returns
retrieveByCartId
Gets an order by cart id.
Parameters
cartIdstringRequiredDefault: {}
Returns
retrieveByCartIdWithTotals
Parameters
cartIdstringRequiredDefault: {}
Returns
retrieveByExternalId
Gets an order by id.
Parameters
externalIdstringRequiredDefault: {}
Returns
completeOrder
Parameters
orderIdstringRequiredReturns
createFromCart
Creates an order from a cart
Parameters
Returns
createGiftCardsFromLineItem_
Parameters
Returns
createShipment
Adds a shipment to the order to indicate that an order has left the warehouse. Will ask the fulfillment provider for any documents that may have been created in regards to the shipment.
Parameters
orderIdstringRequiredfulfillmentIdstringRequiredconfigobjectRequiredconfig.metadataRecord<string, unknown>RequiredtrackingLinksTrackingLink[]config.no_notificationbooleanReturns
updateBillingAddress
Updates the order's billing address.
Parameters
Returns
PromisePromise<void>RequiredupdateShippingAddress
Updates the order's shipping address.
Parameters
Returns
PromisePromise<void>RequiredaddShippingMethod
Parameters
orderIdstringRequiredoptionIdstringRequiredconfigCreateShippingMethodDtoRequiredDefault: {}
dataRecord<string, unknown>Returns
update
Updates an order. Metadata updates should
use dedicated method, e.g. setMetadata etc. The function
will throw errors if metadata updates are attempted.
Parameters
orderIdstringRequiredupdateUpdateOrderInputRequiredReturns
cancel
Cancels an order. Throws if fulfillment process has been initiated. Throws if payment process has been initiated.
Parameters
orderIdstringRequiredReturns
capturePayment
Captures payment for an order.
Parameters
orderIdstringRequiredReturns
validateFulfillmentLineItem
Checks that a given quantity of a line item can be fulfilled. Fails if the fulfillable quantity is lower than the requested fulfillment quantity. Fulfillable quantity is calculated by subtracting the already fulfilled quantity from the quantity that was originally purchased.
Parameters
quantitynumberRequiredReturns
createFulfillment
Creates fulfillments for an order. In a situation where the order has more than one shipping method, we need to partition the order items, such that they can be sent to their respective fulfillment provider.
Parameters
orderIdstringRequireditemsToFulfillFulFillmentItemType[]RequiredconfigobjectRequiredDefault: {}
config.no_notificationbooleanconfig.location_idstringconfig.metadataRecord<string, unknown>Returns
cancelFulfillment
Cancels a fulfillment (if related to an order)
Parameters
fulfillmentIdstringRequiredReturns
getFulfillmentItems
Retrieves the order line items, given an array of items.
Parameters
itemsFulFillmentItemType[]RequiredReturns
archive
Archives an order. It only alloved, if the order has been fulfilled and payment has been captured.
Parameters
orderIdstringRequiredReturns
createRefund
Refunds a given amount back to the customer.
Parameters
orderIdstringRequiredrefundAmountnumberRequiredreasonstringRequiredconfigobjectRequirednotestringconfig.no_notificationbooleanReturns
decorateTotalsLegacy
Parameters
totalsFieldsstring[]RequiredDefault: []
Returns
decorateTotals
**decorateTotals**(order, totalsFields?): Promise<[Order](/references/entities/classes/Order)>
Calculate and attach the different total fields on the object
Parameters
totalsFieldsstring[]Returns
**decorateTotals**(order, context?): Promise<[Order](/references/entities/classes/Order)>
Calculate and attach the different total fields on the object
Parameters
contextTotalsContextReturns
registerReturnReceived
Handles receiving a return. This will create a refund to the customer. If the returned items don't match the requested items the return status will be updated to requires_action. This behaviour is useful in situations where a custom refund amount is requested, but the returned items are not matching the requested items. Setting the allowMismatch argument to true, will process the return, ignoring any mismatches.
Parameters
orderIdstringRequiredcustomRefundAmountnumberReturns
getTotalsRelations
Parameters
Returns
string[]string[]Required