Skip to main content
Skip to main content

TaxProviderService

Finds tax providers and assists in tax related operations.

Hierarchy

  • TransactionBaseService

    TaxProviderService

Constructors

constructor

new TaxProviderService(container)

Parameters

Name
container

Overrides

TransactionBaseService.constructor

Defined in

medusa/src/services/tax-provider.ts:45

Properties

__configModule__

Protected Optional Readonly __configModule__: Record<string, unknown>

Inherited from

TransactionBaseService.__configModule__

Defined in

medusa/src/interfaces/transaction-base-service.ts:14


__container__

Protected Readonly __container__: any

Inherited from

TransactionBaseService.__container__

Defined in

medusa/src/interfaces/transaction-base-service.ts:13


__moduleDeclaration__

Protected Optional Readonly __moduleDeclaration__: Record<string, unknown>

Inherited from

TransactionBaseService.__moduleDeclaration__

Defined in

medusa/src/interfaces/transaction-base-service.ts:15


cacheService_

Protected Readonly cacheService_: ICacheService

Defined in

medusa/src/services/tax-provider.ts:38


container_

Protected Readonly container_: AwilixContainer<any>

Defined in

medusa/src/services/tax-provider.ts:37


eventBus_

Protected Readonly eventBus_: IEventBusService

Defined in

medusa/src/services/tax-provider.ts:43


manager_

Protected manager_: EntityManager

Inherited from

TransactionBaseService.manager_

Defined in

medusa/src/interfaces/transaction-base-service.ts:5


smTaxLineRepo_

Protected Readonly smTaxLineRepo_: Repository<ShippingMethodTaxLine> & { deleteForCart: Method deleteForCart ; upsertLines: Method upsertLines }

Defined in

medusa/src/services/tax-provider.ts:41


taxLineRepo_

Protected Readonly taxLineRepo_: Repository<LineItemTaxLine> & { deleteForCart: Method deleteForCart ; upsertLines: Method upsertLines }

Defined in

medusa/src/services/tax-provider.ts:40


taxProviderRepo_

Protected Readonly taxProviderRepo_: Repository<TaxProvider>

Defined in

medusa/src/services/tax-provider.ts:42


taxRateService_

Protected Readonly taxRateService_: TaxRateService

Defined in

medusa/src/services/tax-provider.ts:39


transactionManager_

Protected transactionManager_: undefined | EntityManager

Inherited from

TransactionBaseService.transactionManager_

Defined in

medusa/src/interfaces/transaction-base-service.ts:6

Accessors

activeManager_

Protected get activeManager_(): EntityManager

Returns

EntityManager

-EntityManager:

Inherited from

TransactionBaseService.activeManager_

Defined in

medusa/src/interfaces/transaction-base-service.ts:8

Methods

atomicPhase_

Protected atomicPhase_<TResult, 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.

Name
TResult
TError

Parameters

NameDescription
work(transactionManager: EntityManager) => Promise<TResult>
isolationOrErrorHandler?IsolationLevel | (error: TError) => Promise<void | TResult>
maybeErrorHandlerOrDontFail?(error: TError) => Promise<void | TResult>

Returns

Promise<TResult>

-Promise: the result of the transactional work

Inherited from

TransactionBaseService.atomicPhase_

Defined in

medusa/src/interfaces/transaction-base-service.ts:56


clearLineItemsTaxLines

clearLineItemsTaxLines(itemIds): Promise<void>

Parameters

Name
itemIds

Returns

Promise<void>

-Promise:

Defined in

medusa/src/services/tax-provider.ts:89


clearTaxLines

clearTaxLines(cartId): Promise<void>

Parameters

Name
cartId

Returns

Promise<void>

-Promise:

Defined in

medusa/src/services/tax-provider.ts:97


createShippingTaxLines

createShippingTaxLines(shippingMethod, calculationContext): Promise<(LineItemTaxLine | ShippingMethodTaxLine)[]>

Persists the tax lines relevant for a shipping method to the database. Used for return shipping methods.

Parameters

NameDescription
shippingMethodShippingMethod
calculationContextTaxCalculationContext

Returns

Promise<(LineItemTaxLine | ShippingMethodTaxLine)[]>

-Promise: the newly created tax lines -(LineItemTaxLine \| ShippingMethodTaxLine)[]: -LineItemTaxLine \| ShippingMethodTaxLine: (optional)

Defined in

medusa/src/services/tax-provider.ts:171


createTaxLines

createTaxLines(cartOrLineItems, calculationContext): Promise<(LineItemTaxLine | ShippingMethodTaxLine)[]>

Persists the tax lines relevant for an order to the database.

Parameters

NameDescription
cartOrLineItemsLineItem[] | Cart
calculationContextTaxCalculationContext

Returns

Promise<(LineItemTaxLine | ShippingMethodTaxLine)[]>

-Promise: the newly created tax lines -(LineItemTaxLine \| ShippingMethodTaxLine)[]: -LineItemTaxLine \| ShippingMethodTaxLine: (optional)

Defined in

medusa/src/services/tax-provider.ts:117


getCacheKey

Private getCacheKey(id, regionId): string

The cache key to get cache hits by.

Parameters

NameDescription
idstring
regionIdstring

Returns

string

-string: (optional) the cache key to use for the id set

Defined in

medusa/src/services/tax-provider.ts:492


getRegionRatesForProduct

getRegionRatesForProduct(productIds, region): Promise<Map<string, TaxServiceRate[]>>

Gets the tax rates configured for a product. The rates are cached between calls.

Parameters

NameDescription
productIdsstring | string[]
regionRegionDetails

Returns

Promise<Map<string, TaxServiceRate[]>>

-Promise: the tax rates configured for the shipping option. A map by product id -Map: -string: (optional) -TaxServiceRate[]:

Defined in

medusa/src/services/tax-provider.ts:427


getRegionRatesForShipping

getRegionRatesForShipping(optionId, regionDetails): Promise<TaxServiceRate[]>

Gets the tax rates configured for a shipping option. The rates are cached between calls.

Parameters

NameDescription
optionIdstring
regionDetailsRegionDetails

Returns

Promise<TaxServiceRate[]>

-Promise: the tax rates configured for the shipping option. -TaxServiceRate[]:

Defined in

medusa/src/services/tax-provider.ts:380


getShippingTaxLines

getShippingTaxLines(shippingMethod, calculationContext): Promise<ShippingMethodTaxLine[]>

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

NameDescription
shippingMethodShippingMethod
calculationContextTaxCalculationContext

Returns

Promise<ShippingMethodTaxLine[]>

-Promise: the computed tax lines -ShippingMethodTaxLine[]: -ShippingMethodTaxLine:

Defined in

medusa/src/services/tax-provider.ts:192


getTaxLines

getTaxLines(lineItems, calculationContext): Promise<(LineItemTaxLine | ShippingMethodTaxLine)[]>

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

NameDescription
lineItemsLineItem[]
calculationContextTaxCalculationContext

Returns

Promise<(LineItemTaxLine | ShippingMethodTaxLine)[]>

-Promise: the computed tax lines -(LineItemTaxLine \| ShippingMethodTaxLine)[]: -LineItemTaxLine \| ShippingMethodTaxLine: (optional)

Defined in

medusa/src/services/tax-provider.ts:246


getTaxLinesMap

Protected getTaxLinesMap(items, calculationContext): Promise<TaxLinesMaps>

Return a map of tax lines for line items and shipping methods

Parameters

Name
items
calculationContext

Returns

Promise<TaxLinesMaps>

-Promise:

Defined in

medusa/src/services/tax-provider.ts:343


list

list(): Promise<TaxProvider[]>

Returns

Promise<TaxProvider[]>

-Promise: -TaxProvider[]: -TaxProvider:

Defined in

medusa/src/services/tax-provider.ts:57


registerInstalledProviders

registerInstalledProviders(providers): Promise<void>

Parameters

Name
providers

Returns

Promise<void>

-Promise:

Defined in

medusa/src/services/tax-provider.ts:496


retrieveProvider

retrieveProvider(region): ITaxService

Retrieves the relevant tax provider for the given region.

Parameters

NameDescription
regionRegion

Returns

ITaxService

Defined in

medusa/src/services/tax-provider.ts:67


shouldRetryTransaction_

Protected shouldRetryTransaction_(err): boolean

Parameters

Name
err

Returns

boolean

-boolean: (optional)

Inherited from

TransactionBaseService.shouldRetryTransaction_

Defined in

medusa/src/interfaces/transaction-base-service.ts:37


withTransaction

withTransaction(transactionManager?): TaxProviderService

Parameters

Name
transactionManager?

Returns

TaxProviderService

-TaxProviderService:

Inherited from

TransactionBaseService.withTransaction

Defined in

medusa/src/interfaces/transaction-base-service.ts:20

Was this section helpful?