Files
medusa-store/www/apps/docs/content/references/services/classes/services.PricingService.mdx
Shahed Nasser 892d737c1f docs: enhance how references are generated (#5805)
* adjusted configurations

* enhancements to tool and configurations

* change reference in docs

* fixed issue in workflows reference

* added project name

* more optimizations

* fix context error

* added a types reference

* resolved missing types

* fix reference reflection types not having children

* add an expand url parameter

* added new option to the README

* added details about new option
2023-12-05 15:29:41 +02:00

1029 lines
21 KiB
Plaintext

---
displayed_sidebar: servicesSidebar
---
import ParameterTypes from "@site/src/components/ParameterTypes"
# PricingService
Allows retrieval of prices.
## constructor
### Parameters
<ParameterTypes parameters={[
{
"name": "__namedParameters",
"type": "`InjectedDependencies`",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
___
## Properties
<ParameterTypes parameters={[
{
"name": "__configModule__",
"type": "`Record<string, unknown>`",
"description": "",
"optional": true,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "__container__",
"type": "`any`",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "__moduleDeclaration__",
"type": "`Record<string, unknown>`",
"description": "",
"optional": true,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "customerService_",
"type": "[CustomerService](services.CustomerService.mdx)",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "featureFlagRouter",
"type": "`FlagRouter`",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "manager_",
"type": "`EntityManager`",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "priceSelectionStrategy",
"type": "[IPriceSelectionStrategy](../../medusa/interfaces/medusa.IPriceSelectionStrategy.mdx)",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "productVariantService",
"type": "[ProductVariantService](services.ProductVariantService.mdx)",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "regionService",
"type": "[RegionService](services.RegionService.mdx)",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "taxProviderService",
"type": "[TaxProviderService](services.TaxProviderService.mdx)",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "transactionManager_",
"type": "`undefined` \\| `EntityManager`",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
___
## Accessors
### activeManager\_
#### Returns
<ParameterTypes parameters={[
{
"name": "EntityManager",
"type": "`EntityManager`",
"optional": false,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
### pricingModuleService
#### Returns
<ParameterTypes parameters={[
{
"name": "IPricingModuleService",
"type": "`object`",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
___
### remoteQuery
#### Returns
<ParameterTypes parameters={[
{
"name": "RemoteQueryFunction",
"type": "`RemoteQueryFunction`",
"optional": false,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
## 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.
#### Type Parameters
<ParameterTypes parameters={[
{
"name": "TResult",
"type": "`object`",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "TError",
"type": "`object`",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Parameters
<ParameterTypes parameters={[
{
"name": "work",
"type": "(`transactionManager`: `EntityManager`) => Promise&#60;TResult&#62;",
"description": "the transactional work to be done",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "isolationOrErrorHandler",
"type": "`IsolationLevel` \\| (`error`: `TError`) => Promise&#60;void \\| TResult&#62;",
"description": "the isolation level to be used for the work.",
"optional": true,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "maybeErrorHandlerOrDontFail",
"type": "(`error`: `TError`) => Promise&#60;void \\| TResult&#62;",
"description": "Potential error handler",
"optional": true,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;TResult&#62;",
"optional": false,
"defaultValue": "",
"description": "the result of the transactional work",
"expandable": false,
"children": []
}
]} />
___
### calculateTaxes
Gets the prices for a product variant
#### Parameters
<ParameterTypes parameters={[
{
"name": "variantPricing",
"type": "[ProductVariantPricing](../../medusa/types/medusa.ProductVariantPricing.mdx)",
"description": "the prices retrieved from a variant",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "productRates",
"type": "[TaxServiceRate](../../medusa/types/medusa.TaxServiceRate.mdx)[]",
"description": "the tax rates that the product has applied",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "TaxedPricing",
"type": "`object`",
"description": "Pricing fields related to taxes.",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
___
### collectPricingContext
Collects additional information necessary for completing the price
selection.
#### Parameters
<ParameterTypes parameters={[
{
"name": "context",
"type": "[PriceSelectionContext](../../medusa/types/medusa.PriceSelectionContext.mdx)",
"description": "the price selection context to use",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;PricingContext&#62;",
"optional": false,
"defaultValue": "",
"description": "The pricing context",
"expandable": false,
"children": []
}
]} />
___
### getPricingModuleVariantMoneyAmounts
#### Parameters
<ParameterTypes parameters={[
{
"name": "variantIds",
"type": "`string`[]",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;Map&#60;string, [MoneyAmount](../../entities/classes/entities.MoneyAmount.mdx)[]&#62;&#62;",
"optional": false,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
### getProductPricing
Gets all the variant prices for a product. All the product's variants will
be fetched.
#### Parameters
<ParameterTypes parameters={[
{
"name": "product",
"type": "Pick&#60;[Product](../../entities/classes/entities.Product.mdx), \"id\" \\| \"variants\"&#62;",
"description": "the product to get pricing for.",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "context",
"type": "[PriceSelectionContext](../../medusa/types/medusa.PriceSelectionContext.mdx)",
"description": "the price selection context to use",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;Record&#60;string, [ProductVariantPricing](../../medusa/types/medusa.ProductVariantPricing.mdx)&#62;&#62;",
"optional": false,
"defaultValue": "",
"description": "A map of variant ids to their corresponding prices",
"expandable": false,
"children": []
}
]} />
___
### getProductPricingById
Gets all the variant prices for a product by the product id
#### Parameters
<ParameterTypes parameters={[
{
"name": "productId",
"type": "`string`",
"description": "the id of the product to get prices for",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "context",
"type": "[PriceSelectionContext](../../medusa/types/medusa.PriceSelectionContext.mdx)",
"description": "the price selection context to use",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;Record&#60;string, [ProductVariantPricing](../../medusa/types/medusa.ProductVariantPricing.mdx)&#62;&#62;",
"optional": false,
"defaultValue": "",
"description": "A map of variant ids to their corresponding prices",
"expandable": false,
"children": []
}
]} />
___
### getProductPricing\_
#### Parameters
<ParameterTypes parameters={[
{
"name": "data",
"type": "`object`[]",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "context",
"type": "[PricingContext](../../types/interfaces/types.PricingContext.mdx)",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;Map&#60;string, Record&#60;string, [ProductVariantPricing](../../medusa/types/medusa.ProductVariantPricing.mdx)&#62;&#62;&#62;",
"optional": false,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
### getProductVariantPricing
Gets the prices for a product variant.
#### Parameters
<ParameterTypes parameters={[
{
"name": "variant",
"type": "Pick&#60;[ProductVariant](../../entities/classes/entities.ProductVariant.mdx), \"id\" \\| \"product_id\"&#62;",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "context",
"type": "[PriceSelectionContext](../../medusa/types/medusa.PriceSelectionContext.mdx) \\| [PricingContext](../../types/interfaces/types.PricingContext.mdx)",
"description": "the price selection context to use",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;[ProductVariantPricing](../../medusa/types/medusa.ProductVariantPricing.mdx)&#62;",
"optional": false,
"defaultValue": "",
"description": "The product variant prices",
"expandable": false,
"children": []
}
]} />
___
### getProductVariantPricingById
Gets the prices for a product variant by a variant id.
#### Parameters
<ParameterTypes parameters={[
{
"name": "variantId",
"type": "`string`",
"description": "the id of the variant to get prices for",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "context",
"type": "[PriceSelectionContext](../../medusa/types/medusa.PriceSelectionContext.mdx) \\| [PricingContext](../../types/interfaces/types.PricingContext.mdx)",
"description": "the price selection context to use",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;[ProductVariantPricing](../../medusa/types/medusa.ProductVariantPricing.mdx)&#62;",
"optional": false,
"defaultValue": "",
"description": "The product variant prices",
"expandable": false,
"children": []
}
]} />
#### Deprecated
Use [getProductVariantsPricing](services.PricingService.mdx#getproductvariantspricing) instead.
___
### getProductVariantPricingModulePricing\_
#### Parameters
<ParameterTypes parameters={[
{
"name": "variantPriceData",
"type": "`object`[]",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "context",
"type": "[PricingContext](../../types/interfaces/types.PricingContext.mdx)",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;Map&#60;any, any&#62;&#62;",
"optional": false,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
### getProductVariantPricing\_
#### Parameters
<ParameterTypes parameters={[
{
"name": "data",
"type": "`object`[]",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "context",
"type": "[PricingContext](../../types/interfaces/types.PricingContext.mdx)",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;Map&#60;string, [ProductVariantPricing](../../medusa/types/medusa.ProductVariantPricing.mdx)&#62;&#62;",
"optional": false,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
### getProductVariantsPricing
Gets the prices for a collection of variants.
#### Parameters
<ParameterTypes parameters={[
{
"name": "data",
"type": "`object`[]",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "context",
"type": "[PriceSelectionContext](../../medusa/types/medusa.PriceSelectionContext.mdx) \\| [PricingContext](../../types/interfaces/types.PricingContext.mdx)",
"description": "the price selection context to use",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;object&#62;",
"optional": false,
"defaultValue": "",
"description": "The product variant prices",
"expandable": false,
"children": []
}
]} />
___
### getShippingOptionPricing
Gets the prices for a shipping option.
#### Parameters
<ParameterTypes parameters={[
{
"name": "shippingOption",
"type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)",
"description": "the shipping option to get prices for",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "context",
"type": "[PriceSelectionContext](../../medusa/types/medusa.PriceSelectionContext.mdx) \\| [PricingContext](../../types/interfaces/types.PricingContext.mdx)",
"description": "the price selection context to use",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;[PricedShippingOption](../../medusa/types/medusa.PricedShippingOption.mdx)&#62;",
"optional": false,
"defaultValue": "",
"description": "The shipping option prices",
"expandable": false,
"children": []
}
]} />
___
### setAdminProductPricing
#### Parameters
<ParameterTypes parameters={[
{
"name": "products",
"type": "[Product](../../entities/classes/entities.Product.mdx)[]",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;([Product](../../entities/classes/entities.Product.mdx) \\| [PricedProduct](../../medusa/types/medusa.PricedProduct.mdx))[]&#62;",
"optional": false,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
### setAdminVariantPricing
#### Parameters
<ParameterTypes parameters={[
{
"name": "variants",
"type": "[ProductVariant](../../entities/classes/entities.ProductVariant.mdx)[]",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "context",
"type": "[PriceSelectionContext](../../medusa/types/medusa.PriceSelectionContext.mdx)",
"description": "",
"optional": false,
"defaultValue": "{}",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;[PricedVariant](../../medusa/types/medusa.PricedVariant.mdx)[]&#62;",
"optional": false,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
### setProductPrices
Set additional prices on a list of products.
#### Parameters
<ParameterTypes parameters={[
{
"name": "products",
"type": "[Product](../../entities/classes/entities.Product.mdx)[]",
"description": "list of products on which to set additional prices",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "context",
"type": "[PriceSelectionContext](../../medusa/types/medusa.PriceSelectionContext.mdx)",
"description": "the price selection context to use",
"optional": false,
"defaultValue": "{}",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;([Product](../../entities/classes/entities.Product.mdx) \\| [PricedProduct](../../medusa/types/medusa.PricedProduct.mdx))[]&#62;",
"optional": false,
"defaultValue": "",
"description": "A list of products with variants decorated with prices",
"expandable": false,
"children": []
}
]} />
___
### setShippingOptionPrices
Set additional prices on a list of shipping options.
#### Parameters
<ParameterTypes parameters={[
{
"name": "shippingOptions",
"type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
"description": "list of shipping options on which to set additional prices",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "context",
"type": "Omit&#60;[PriceSelectionContext](../../medusa/types/medusa.PriceSelectionContext.mdx), \"region_id\"&#62;",
"description": "the price selection context to use",
"optional": false,
"defaultValue": "{}",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;[PricedShippingOption](../../medusa/types/medusa.PricedShippingOption.mdx)[]&#62;",
"optional": false,
"defaultValue": "",
"description": "A list of shipping options with prices",
"expandable": false,
"children": []
}
]} />
___
### setVariantPrices
Set additional prices on a list of product variants.
#### Parameters
<ParameterTypes parameters={[
{
"name": "variants",
"type": "[ProductVariant](../../entities/classes/entities.ProductVariant.mdx)[]",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "context",
"type": "[PriceSelectionContext](../../medusa/types/medusa.PriceSelectionContext.mdx)",
"description": "the price selection context to use",
"optional": false,
"defaultValue": "{}",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "Promise",
"type": "Promise&#60;[PricedVariant](../../medusa/types/medusa.PricedVariant.mdx)[]&#62;",
"optional": false,
"defaultValue": "",
"description": "A list of products with variants decorated with prices",
"expandable": false,
"children": []
}
]} />
___
### shouldRetryTransaction\_
#### Parameters
<ParameterTypes parameters={[
{
"name": "err",
"type": "`Record<string, unknown>` \\| `object`",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "boolean",
"type": "`boolean`",
"optional": true,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
### withTransaction
#### Parameters
<ParameterTypes parameters={[
{
"name": "transactionManager",
"type": "`EntityManager`",
"description": "",
"optional": true,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
#### Returns
<ParameterTypes parameters={[
{
"name": "PricingService",
"type": "`object`",
"description": "Allows retrieval of prices.",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />