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
EntityManagerEntityManagerRequiredMethods
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.
TResultobjectRequiredTErrorobjectRequiredParameters
work(transactionManager: EntityManager) => Promise<TResult>RequiredisolationOrErrorHandlerIsolationLevel | (error: TError) => Promise<void | TResult>maybeErrorHandlerOrDontFail(error: TError) => Promise<void | TResult>Returns
Promise<TResult>
PromisePromise<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
returnIdstringRequiredReturns
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
returnIdstringRequiredReturns
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
returnIdstringRequiredrefundAmountnumberallowMismatchbooleanRequiredDefault: false
contextobjectRequiredDefault: {}
context.locationIdstringReturns
Promise<Return>
retrieve
**retrieve**(returnId, config?): Promise<[Return](/references/services/classes/Return)>
Retrieves a return by its id.
Parameters
returnIdstringRequiredDefault: {}
Returns
Promise<Return>
retrieveBySwap
**retrieveBySwap**(swapId, relations?): Promise<[Return](/references/services/classes/Return)>
Parameters
swapIdstringRequiredrelationsstring[]RequiredDefault: []
Returns
Promise<Return>
shouldRetryTransaction_
Protected **shouldRetryTransaction_**(err): boolean
Parameters
errRecord<string, unknown> | { code: string }RequiredReturns
boolean
booleanbooleanupdate
**update**(returnId, update): Promise<[Return](/references/services/classes/Return)>
Parameters
returnIdstringRequiredReturns
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
itemLineItemquantitynumberRequiredDefault: 0
additionalobjectRequiredDefault: {}
additional.notestringadditional.reason_idstringReturns
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
voidvoidThrows
when statuses are not sufficient for returns.
withTransaction
**withTransaction**(transactionManager?): [ReturnService](/references/services/classes/ReturnService)
Parameters
transactionManagerEntityManager