Skip to main content

VAS Costs

Per-VAS, per-tag pricing. Updates propagate to channel_value_added_service and listing_channel_value_added_service. Supports single, bulk, and CSV upload/export.

📄️ Upsert VAS costs for one or more tags

Sets the (vasId, variantId?, tagName) row for every tag in `tagName`. For simple strategies (FIXED / PER_PERSON / PER_ITEM / PER_QUANTITY / PER_HOUR / PER_KM) the `price` column alone is enough. Complex strategies (BASE_PLUS_OVERAGE, TIERED, ON_ACTUALS) carry their parameters in `pricingConfig`. `tagName` is an array, so one configuration can cover several tags — `'tagName': ['GOA', 'purple']` writes two rows. A bare string is still accepted and read as a one-element array. Blank entries and an empty array are rejected; repeated tags are collapsed. The response `data` is always an array, one persisted row per tag, in the order supplied. Updates propagate to listing_channel_value_added_service via FK.