FulfillmentProviderService
Helps retrieve fulfillment providers
Constructors
constructor
**new FulfillmentProviderService**(container)
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>RequiredcalculatePrice
**calculatePrice**(option, data, cart?): Promise<number>
Parameters
dataRecord<string, unknown>RequiredReturns
Promise<number>
PromisePromise<number>RequiredcanCalculate
**canCalculate**(option): Promise<boolean>
Parameters
Returns
Promise<boolean>
PromisePromise<boolean>RequiredcancelFulfillment
**cancelFulfillment**(fulfillment): Promise<[Fulfillment](/references/services/classes/Fulfillment)>
Parameters
Returns
Promise<Fulfillment>
createFulfillment
**createFulfillment**(method, items, order, fulfillment): Promise<Record<string, unknown>>
Parameters
Returns
Promise<Record<string, unknown>>
PromisePromise<Record<string, unknown>>RequiredcreateReturn
**createReturn**(returnOrder): Promise<Record<string, unknown>>
Parameters
Returns
Promise<Record<string, unknown>>
PromisePromise<Record<string, unknown>>Requiredlist
**list**(): Promise<[FulfillmentProvider](/references/services/classes/FulfillmentProvider)[]>
Returns
Promise<FulfillmentProvider[]>
listFulfillmentOptions
**listFulfillmentOptions**(providerIds): Promise<[FulfillmentOptions](/references/services/types/FulfillmentOptions)[]>
Parameters
providerIdsstring[]RequiredReturns
Promise<FulfillmentOptions[]>
registerInstalledProviders
**registerInstalledProviders**(providers): Promise<void>
Parameters
providersstring[]RequiredReturns
Promise<void>
PromisePromise<void>RequiredretrieveDocuments
**retrieveDocuments**(providerId, fulfillmentData, documentType): Promise<any>
Fetches documents from the fulfillment provider
Parameters
providerIdstringRequiredfulfillmentDataRecord<string, unknown>RequireddocumentType"label" | "invoice"RequiredReturns
Promise<any>
PromisePromise<any>RequiredretrieveProvider
**retrieveProvider**(providerId): any
Parameters
providerIdstringRequiredReturns
any
anyanyshouldRetryTransaction_
Protected **shouldRetryTransaction_**(err): boolean
Parameters
errRecord<string, unknown> | { code: string }RequiredReturns
boolean
booleanbooleanvalidateFulfillmentData
**validateFulfillmentData**(option, data, cart): Promise<Record<string, unknown>>
Parameters
dataRecord<string, unknown>RequiredReturns
Promise<Record<string, unknown>>
PromisePromise<Record<string, unknown>>RequiredvalidateOption
**validateOption**(option): Promise<boolean>
Parameters
Returns
Promise<boolean>
PromisePromise<boolean>RequiredwithTransaction
**withTransaction**(transactionManager?): [FulfillmentProviderService](/references/services/classes/FulfillmentProviderService)
Parameters
transactionManagerEntityManager