ReturnService
Constructors
constructor
**new ReturnService**(«destructured»)
Parameters
Properties
__configModule__
Record<string, unknown>__container__
anyRequired__moduleDeclaration__
Record<string, unknown>manager_
EntityManagerRequiredtransactionManager_
undefined | EntityManagerRequiredAccessors
activeManager_
Protected get**activeManager_**(): EntityManager
Returns
EntityManager
EntityManager
EntityManagerRequiredMethods
atomicPhase_
Protected **atomicPhase_**<TypeParameter TResult, TypeParameter TError>(work, isolationOrErrorHandler?, maybeErrorHandlerOrDontFail?): Promise<TResult>
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.
TResult
objectRequiredTError
objectRequiredParameters
work
(transactionManager: EntityManager) => Promise<TResult>RequiredisolationOrErrorHandler
IsolationLevel | (error: TError) => Promise<void | TResult>maybeErrorHandlerOrDontFail
(error: TError) => Promise<void | TResult>Returns
Promise<TResult>
Promise
Promise<TResult>Requiredcancel
**cancel**(returnId): Promise<[Return](/references/services/classes/Return)>
Cancels a return if possible. Returns can be canceled if it has not been received.
Parameters
returnId
stringRequiredReturns
Promise<Return>
create
**create**(data): Promise<[Return](/references/services/classes/Return)>
Creates a return request for an order, with given items, and a shipping method. If no refund amount is provided the refund amount is calculated from the return lines and the shipping cost.
Parameters
Returns
Promise<Return>
fulfill
**fulfill**(returnId): Promise<[Return](/references/services/classes/Return)>
Parameters
returnId
stringRequiredReturns
Promise<Return>
getFulfillmentItems
Protected **getFulfillmentItems**(order, items, transformer): Promise<[LineItem](/references/services/classes/LineItem) & { note?: string ; reason_id?: string }[]>
Retrieves the order line items, given an array of items
Parameters
Returns
Promise<LineItem & { note?: string ; reason_id?: string }[]>
list
**list**(selector, config?): Promise<[Return](/references/services/classes/Return)[]>
Parameters
Returns
Promise<Return[]>
listAndCount
**listAndCount**(selector, config?): Promise<[[Return](/references/services/classes/Return)[], number]>
Parameters
Returns
Promise<[Return[], number]>
receive
**receive**(returnId, receivedItems, refundAmount?, allowMismatch?, context?): Promise<[Return](/references/services/classes/Return)>
Registers a previously requested return as received. 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
returnId
stringRequiredrefundAmount
numberallowMismatch
booleanRequiredDefault: false
context
objectRequiredDefault: {}
context.locationId
stringReturns
Promise<Return>
retrieve
**retrieve**(returnId, config?): Promise<[Return](/references/services/classes/Return)>
Retrieves a return by its id.
Parameters
returnId
stringRequiredDefault: {}
Returns
Promise<Return>
retrieveBySwap
**retrieveBySwap**(swapId, relations?): Promise<[Return](/references/services/classes/Return)>
Parameters
swapId
stringRequiredrelations
string[]RequiredDefault: []
Returns
Promise<Return>
shouldRetryTransaction_
Protected **shouldRetryTransaction_**(err): boolean
Parameters
err
Record<string, unknown> | { code: string }RequiredReturns
boolean
boolean
booleanupdate
**update**(returnId, update): Promise<[Return](/references/services/classes/Return)>
Parameters
returnId
stringRequiredReturns
Promise<Return>
validateReturnLineItem
Protected **validateReturnLineItem**(item?, quantity?, additional?): DeepPartial<[LineItem](/references/services/classes/LineItem)>
Checks that a given quantity of a line item can be returned. Fails if the item is undefined or if the returnable quantity of the item is lower, than the quantity that is requested to be returned.
Parameters
item
LineItemquantity
numberRequiredDefault: 0
additional
objectRequiredDefault: {}
additional.note
stringadditional.reason_id
stringReturns
DeepPartial<LineItem>
validateReturnStatuses
Protected **validateReturnStatuses**(order): void
Checks that an order has the statuses necessary to complete a return. fulfillment_status cannot be not_fulfilled or returned. payment_status must be captured.
Parameters
Returns
void
void
voidThrows
when statuses are not sufficient for returns.
withTransaction
**withTransaction**(transactionManager?): [ReturnService](/references/services/classes/ReturnService)
Parameters
transactionManager
EntityManager