TaxProviderService
Finds tax providers and assists in tax related operations.
Properties
__configModule__Record<string, unknown>__container__anyRequired__moduleDeclaration__Record<string, unknown>container_AwilixContainer<any>RequiredgetCacheKeyanyRequiredmanager_EntityManagerRequiredsmTaxLineRepo_Repository<ShippingMethodTaxLine> & { deleteForCart: Method deleteForCart ; upsertLines: Method upsertLines }RequiredtaxLineRepo_Repository<LineItemTaxLine> & { deleteForCart: Method deleteForCart ; upsertLines: Method upsertLines }RequiredtransactionManager_undefined | EntityManagerRequiredAccessors
activeManager_
Inherited from
TransactionBaseService.activeManager_
Methods
atomicPhase_
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.
Parameters
work(transactionManager: EntityManager) => Promise<TResult>RequiredisolationOrErrorHandlerIsolationLevel | (error: TError) => Promise<void | TResult>maybeErrorHandlerOrDontFail(error: TError) => Promise<void | TResult>Returns
PromisePromise<TResult>RequiredclearLineItemsTaxLines
Parameters
itemIdsstring[]RequiredReturns
PromisePromise<void>RequiredclearTaxLines
Parameters
cartIdstringRequiredReturns
PromisePromise<void>RequiredcreateShippingTaxLines
Persists the tax lines relevant for a shipping method to the database. Used for return shipping methods.
Parameters
Returns
createTaxLines
Persists the tax lines relevant for an order to the database.
Parameters
Returns
getRegionRatesForProduct
Gets the tax rates configured for a product. The rates are cached between calls.
Parameters
productIdsstring | string[]RequiredReturns
getRegionRatesForShipping
Gets the tax rates configured for a shipping option. The rates are cached between calls.
Parameters
optionIdstringRequiredReturns
getShippingTaxLines
Gets the relevant tax lines for a shipping method. Note: this method doesn't persist the tax lines. Use createShippingTaxLines if you wish to persist the tax lines to the DB layer.
Parameters
Returns
getTaxLines
Gets the relevant tax lines for an order or cart. If an order is provided the order's tax lines will be returned. If a cart is provided the tax lines will be computed from the tax rules and potentially a 3rd party tax plugin. Note: this method doesn't persist the tax lines. Use createTaxLines if you wish to persist the tax lines to the DB layer.
Parameters
Returns
getTaxLinesMap
Return a map of tax lines for line items and shipping methods
Parameters
Returns
list
Returns
registerInstalledProviders
Parameters
providersstring[]RequiredReturns
PromisePromise<void>RequiredretrieveProvider
Retrieves the relevant tax provider for the given region.
Parameters
Returns
getTaxLines(itemLines: ItemTaxCalculationLine[], shippingLines: ShippingTaxCalculationLine[], context: TaxCalculationContext) => Promise<ProviderTaxLine[]>RequiredshouldRetryTransaction_
Parameters
errRecord<string, unknown> | { code: string }RequiredReturns
booleanbooleanwithTransaction
Parameters
transactionManagerEntityManager