Back to Medusa

createTaxRates - Tax Module Reference

www/apps/resources/references/tax/ITaxModuleService/methods/tax.ITaxModuleService.createTaxRates/page.mdx

2.14.219.0 KB
Original Source

import { TypeList } from "docs-ui"

createTaxRates - Tax Module Reference

This documentation provides a reference to the createTaxRates method. This belongs to the Tax Module.

<Note>

You should only use this methods when implementing complex customizations. For common cases, check out available workflows instead.

</Note>

createTaxRates(data, sharedContext?): Promise<TaxRateDTO[]>

This method creates tax rates.

Example

ts
const taxRates = await taxModuleService.createTaxRates([
  {
    tax_region_id: "txreg_123",
    name: "Default rate",
    rate: 10,
  },
  {
    tax_region_id: "txreg_123",
    name: "Custom rate",
    rate: 15,
    rules: [
      {
        reference: "product_type",
        reference_id: "ptyp_1",
      },
      {
        reference: "product",
        reference_id: "prod_123",
      },
    ],
  },
])

Parameters

<TypeList types={[{"name":"data","type":"CreateTaxRateDTO[]","description":"The tax rates to be created.","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"tax_region_id","type":"string","description":"The associated tax region's ID.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"name","type":"string","description":"The name of the tax rate.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"rate","type":"null \| number","description":"The rate to charge.","optional":true,"defaultValue":"","example":"10","expandable":false,"children":[]},{"name":"code","type":"null \| string","description":"The code of the tax rate.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"rules","type":"Omit<CreateTaxRateRuleDTO, "tax_rate_id">[]","description":"The rules of the tax rate.","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"reference","type":"string","description":"The snake-case name of the data model that the tax rule references.\nFor example, product.\n\nLearn more in this guide.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"reference_id","type":"string","description":"The ID of the record of the data model that the tax rule references.\nFor example, prod_123.\n\nLearn more in this guide.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"metadata","type":"MetadataType","description":"Holds custom data in key-value pairs.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"created_by","type":"null \| string","description":"Who created the tax rate rule. For example, the ID of the\nuser that created it.","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"is_default","type":"boolean","description":"Whether the tax rate is default.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"created_by","type":"string","description":"Who created the tax rate. For example, the ID of the user\nthat created the tax rate.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"metadata","type":"MetadataType","description":"Holds custom data in key-value pairs.","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"sharedContext","type":"Context","description":"A context used to share resources, such as transaction manager, between the application and the module.","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"transactionManager","type":"TManager","description":"An instance of a transaction manager of type TManager, which is a typed parameter passed to the context to specify the type of the transactionManager.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"manager","type":"TManager","description":"An instance of a manager, typically an entity manager, of type TManager, which is a typed parameter passed to the context to specify the type of the manager.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isolationLevel","type":"string","description":"A string indicating the isolation level of the context. Possible values are READ UNCOMMITTED, READ COMMITTED, REPEATABLE READ, or SERIALIZABLE.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"enableNestedTransactions","type":"boolean","description":"A boolean value indicating whether nested transactions are enabled.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"eventGroupId","type":"string","description":"A string indicating the ID of the group to aggregate the events to be emitted at a later point.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"transactionId","type":"string","description":"A string indicating the ID of the current transaction.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"runId","type":"string","description":"A string indicating the ID of the current run.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"messageAggregator","type":"IMessageAggregator","description":"An instance of a message aggregator, which is used to aggregate messages to be emitted at a later point.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"requestId","type":"string","description":"A string indicating the ID of the current request.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"idempotencyKey","type":"string","description":"A string indicating the idempotencyKey of the current workflow execution.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"parentStepIdempotencyKey","type":"string","description":"A string indicating the idempotencyKey of the parent workflow execution.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"preventReleaseEvents","type":"boolean","description":"preventReleaseEvents","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isCancelling","type":"boolean","description":"A boolean value indicating whether the current workflow execution is being cancelled.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"cancelingFromParentStep","type":"boolean","description":"Weither or not a sub workflow cancellation is being triggered from a parent step.\nIf true, the parent step will not be triggered by the sub workflow.","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/learn/fundamentals/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="createTaxRates"/>

Returns

<TypeList types={[{"name":"Promise","type":"Promise<TaxRateDTO[]>","optional":false,"defaultValue":"","description":"The created tax rates.","expandable":false,"children":[{"name":"TaxRateDTO[]","type":"TaxRateDTO[]","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"id","type":"string","description":"The ID of the tax rate.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"rate","type":"null \| number","description":"The rate to charge.","optional":false,"defaultValue":"","example":"10","expandable":false,"children":[]},{"name":"code","type":"null \| string","description":"The code the tax rate is identified by.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"name","type":"string","description":"The name of the Tax Rate.","optional":false,"defaultValue":"","example":"VAT","expandable":false,"children":[]},{"name":"metadata","type":"null \| Record<string, unknown>","description":"Holds custom data in key-value pairs.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"tax_region_id","type":"string","description":"The ID of the associated tax region.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"is_combinable","type":"boolean","description":"Whether the tax rate should be combined with parent rates.\n\nLearn more here.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"is_default","type":"boolean","description":"Whether the tax rate is the default rate for the region.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"created_at","type":"string \| Date","description":"The creation date of the tax rate.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"updated_at","type":"string \| Date","description":"The update date of the tax rate.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"deleted_at","type":"null \| Date","description":"The deletion date of the tax rate.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"created_by","type":"null \| string","description":"Who created the tax rate. For example, the ID of the user that created the tax rate.","optional":false,"defaultValue":"","expandable":false,"children":[]}]}]}]} expandUrl="https://docs.medusajs.com/learn/fundamentals/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="createTaxRates"/>

createTaxRates(data, sharedContext?): Promise<TaxRateDTO>

This method creates a tax rate.

Example

ts
const taxRate = await taxModuleService.createTaxRates({
  tax_region_id: "txreg_123",
  name: "Default rate",
  rate: 10,
})

Parameters

<TypeList types={[{"name":"data","type":"CreateTaxRateDTO","description":"The tax rate to be created.","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"tax_region_id","type":"string","description":"The associated tax region's ID.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"name","type":"string","description":"The name of the tax rate.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"rate","type":"null \| number","description":"The rate to charge.","optional":true,"defaultValue":"","example":"10","expandable":false,"children":[]},{"name":"code","type":"null \| string","description":"The code of the tax rate.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"rules","type":"Omit<CreateTaxRateRuleDTO, "tax_rate_id">[]","description":"The rules of the tax rate.","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"reference","type":"string","description":"The snake-case name of the data model that the tax rule references.\nFor example, product.\n\nLearn more in this guide.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"reference_id","type":"string","description":"The ID of the record of the data model that the tax rule references.\nFor example, prod_123.\n\nLearn more in this guide.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"metadata","type":"MetadataType","description":"Holds custom data in key-value pairs.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"created_by","type":"null \| string","description":"Who created the tax rate rule. For example, the ID of the\nuser that created it.","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"is_default","type":"boolean","description":"Whether the tax rate is default.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"created_by","type":"string","description":"Who created the tax rate. For example, the ID of the user\nthat created the tax rate.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"metadata","type":"MetadataType","description":"Holds custom data in key-value pairs.","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"sharedContext","type":"Context","description":"A context used to share resources, such as transaction manager, between the application and the module.","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"transactionManager","type":"TManager","description":"An instance of a transaction manager of type TManager, which is a typed parameter passed to the context to specify the type of the transactionManager.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"manager","type":"TManager","description":"An instance of a manager, typically an entity manager, of type TManager, which is a typed parameter passed to the context to specify the type of the manager.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isolationLevel","type":"string","description":"A string indicating the isolation level of the context. Possible values are READ UNCOMMITTED, READ COMMITTED, REPEATABLE READ, or SERIALIZABLE.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"enableNestedTransactions","type":"boolean","description":"A boolean value indicating whether nested transactions are enabled.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"eventGroupId","type":"string","description":"A string indicating the ID of the group to aggregate the events to be emitted at a later point.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"transactionId","type":"string","description":"A string indicating the ID of the current transaction.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"runId","type":"string","description":"A string indicating the ID of the current run.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"messageAggregator","type":"IMessageAggregator","description":"An instance of a message aggregator, which is used to aggregate messages to be emitted at a later point.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"requestId","type":"string","description":"A string indicating the ID of the current request.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"idempotencyKey","type":"string","description":"A string indicating the idempotencyKey of the current workflow execution.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"parentStepIdempotencyKey","type":"string","description":"A string indicating the idempotencyKey of the parent workflow execution.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"preventReleaseEvents","type":"boolean","description":"preventReleaseEvents","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isCancelling","type":"boolean","description":"A boolean value indicating whether the current workflow execution is being cancelled.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"cancelingFromParentStep","type":"boolean","description":"Weither or not a sub workflow cancellation is being triggered from a parent step.\nIf true, the parent step will not be triggered by the sub workflow.","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/learn/fundamentals/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="createTaxRates"/>

Returns

<TypeList types={[{"name":"Promise","type":"Promise<TaxRateDTO>","optional":false,"defaultValue":"","description":"The created tax rate.","expandable":false,"children":[{"name":"id","type":"string","description":"The ID of the tax rate.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"rate","type":"null \| number","description":"The rate to charge.","optional":false,"defaultValue":"","example":"10","expandable":false,"children":[]},{"name":"code","type":"null \| string","description":"The code the tax rate is identified by.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"name","type":"string","description":"The name of the Tax Rate.","optional":false,"defaultValue":"","example":"VAT","expandable":false,"children":[]},{"name":"metadata","type":"null \| Record<string, unknown>","description":"Holds custom data in key-value pairs.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"tax_region_id","type":"string","description":"The ID of the associated tax region.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"is_combinable","type":"boolean","description":"Whether the tax rate should be combined with parent rates.\n\nLearn more here.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"is_default","type":"boolean","description":"Whether the tax rate is the default rate for the region.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"created_at","type":"string \| Date","description":"The creation date of the tax rate.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"updated_at","type":"string \| Date","description":"The update date of the tax rate.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"deleted_at","type":"null \| Date","description":"The deletion date of the tax rate.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"created_by","type":"null \| string","description":"Who created the tax rate. For example, the ID of the user that created the tax rate.","optional":false,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/learn/fundamentals/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="createTaxRates"/>