www/apps/resources/references/fulfillment/IFulfillmentModuleService/methods/fulfillment.IFulfillmentModuleService.validateFulfillmentData/page.mdx
import { TypeList } from "docs-ui"
This documentation provides a reference to the validateFulfillmentData method. This belongs to the Fulfillment Module.
You should only use this methods when implementing complex customizations. For common cases, check out available workflows instead.
</Note>This method validates fulfillment data with the provider it belongs to. e.g. if the shipping option requires a drop point, the data you pass to create the shipping method must contain a drop point ID. This method can be used to validate that.
const isValid =
await fulfillmentModuleService.validateFulfillmentData(
"webshipper",
{
requires_drop_point: true,
},
{
drop_point_id: "dp_123",
},
{}
)
<TypeList types={[{"name":"providerId","type":"string","description":"The fulfillment provider's ID.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"optionData","type":"Record<string, unknown>","description":"The fulfillment option data to validate.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"data","type":"Record<string, unknown>","description":"The fulfillment data to validate.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"context","type":"ValidateFulfillmentDataContext","description":"The context to validate the fulfillment option data in.","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"id","type":"CartDTO[\"id\"]","description":"The cart's ID.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"shipping_address","type":"CartDTO[\"shipping_address\"]","description":"The cart's shipping address.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"items","type":"CartLineItemDTO & object[]","description":"The cart's items","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"original_total","type":"BigNumberValue","description":"The original total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"original_subtotal","type":"BigNumberValue","description":"The original subtotal of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"original_tax_total","type":"BigNumberValue","description":"The original tax total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"item_total","type":"BigNumberValue","description":"The item total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"item_subtotal","type":"BigNumberValue","description":"The item subtotal of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"item_tax_total","type":"BigNumberValue","description":"The item tax total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"total","type":"BigNumberValue","description":"The total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"subtotal","type":"BigNumberValue","description":"The subtotal of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"tax_total","type":"BigNumberValue","description":"The tax total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"discount_total","type":"BigNumberValue","description":"The discount total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"discount_tax_total","type":"BigNumberValue","description":"The discount tax total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"raw_original_total","type":"BigNumberRawValue","description":"The raw original total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"raw_original_subtotal","type":"BigNumberRawValue","description":"The raw original subtotal of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"raw_original_tax_total","type":"BigNumberRawValue","description":"The raw original tax total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"raw_item_total","type":"BigNumberRawValue","description":"The raw item total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"raw_item_subtotal","type":"BigNumberRawValue","description":"The raw item subtotal of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"raw_item_tax_total","type":"BigNumberRawValue","description":"The raw item tax total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"raw_total","type":"BigNumberRawValue","description":"The raw total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"raw_subtotal","type":"BigNumberRawValue","description":"The raw subtotal of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"raw_tax_total","type":"BigNumberRawValue","description":"The raw tax total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"raw_discount_total","type":"BigNumberRawValue","description":"The raw discount total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"raw_discount_tax_total","type":"BigNumberRawValue","description":"The raw discount tax total of the cart line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"id","type":"string","description":"The ID of the line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"title","type":"string","description":"The title of the line item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"quantity","type":"BigNumberValue","description":"The line item's quantity in the cart.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"requires_shipping","type":"boolean","description":"Whether the line item requires shipping.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"is_discountable","type":"boolean","description":"Whether the line item is discountable.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"is_giftcard","type":"boolean","description":"Whether the line item is a gift card.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"is_tax_inclusive","type":"boolean","description":"Whether the line item price is tax inclusive.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"is_custom_price","type":"boolean","description":"Whether the line item price is a custom price.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"unit_price","type":"BigNumberValue","description":"The unit price of the item.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"cart","type":"CartDTO","description":"The associated cart.","optional":false,"defaultValue":"","expandable":true,"children":[]},{"name":"cart_id","type":"string","description":"The ID of the associated cart.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"variant","type":"object","description":"The item's variant.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"product","type":"object","description":"The item's product.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"subtitle","type":"string","description":"The subtitle of the line item.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"thumbnail","type":"string","description":"The line item's thumbnail.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"product_id","type":"string","description":"The ID of the associated product.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"product_title","type":"string","description":"The title of the associated product.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"product_description","type":"string","description":"The description of the associated product.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"product_subtitle","type":"string","description":"The subtitle of the associated product.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"product_type","type":"string","description":"The type of the associated product.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"product_type_id","type":"string","description":"The type of the associated product.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"product_collection","type":"string","description":"The collection of the associated product.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"product_handle","type":"string","description":"The handle of the associated product.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"variant_id","type":"string","description":"The associated variant's ID of the line item.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"variant_sku","type":"string","description":"The sku of the associated variant.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"variant_barcode","type":"string","description":"The barcode of the associated variant.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"variant_title","type":"string","description":"The title of the associated variant.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"variant_option_values","type":"Record<string, unknown>","description":"The option values of the associated variant.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"compare_at_unit_price","type":"BigNumberValue","description":"The calculated price of the line item.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"tax_lines","type":"LineItemTaxLineDTO[]","description":"The associated tax lines.","optional":true,"defaultValue":"","expandable":true,"children":[]},{"name":"adjustments","type":"LineItemAdjustmentDTO[]","description":"The associated adjustments.","optional":true,"defaultValue":"","expandable":true,"children":[]},{"name":"metadata","type":"null \| Record<string, unknown>","description":"Holds custom data in key-value pairs.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"created_at","type":"Date","description":"When the line item was created.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"updated_at","type":"Date","description":"When the line item was updated.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"deleted_at","type":"Date","description":"When the line item was deleted.","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"from_location","type":"StockLocationDTO","description":"Details about the location that items are being shipped from.","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"id","type":"string","description":"The ID of the stock location.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"name","type":"string","description":"The name of the stock location.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"metadata","type":"Record<string, unknown> \| null","description":"Holds custom data in key-value pairs.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"address_id","type":"string","description":"The associated address's ID.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"fulfillment_sets","type":"FulfillmentSetDTO[]","description":"Fulfillment sets for the location","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"created_at","type":"string \| Date","description":"The creation date of the stock location.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"updated_at","type":"string \| Date","description":"The update date of the stock location.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"deleted_at","type":"string \| Date \| null","description":"The deletion date of the stock location.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"address","type":"StockLocationAddressDTO","description":"The address of the stock location.","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]}]} expandUrl="https://docs.medusajs.com/learn/fundamentals/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="validateFulfillmentData"/>
<TypeList types={[{"name":"Promise","type":"Promise<Record<string, unknown>>","optional":false,"defaultValue":"","description":"Whether the fulfillment option data is valid with the specified provider.","expandable":false,"children":[{"name":"string","type":"string","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]},{"name":"unknown","type":"unknown","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/learn/fundamentals/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="validateFulfillmentData"/>