Delivery EU VAT
Applies destination-based EU VAT to delivery fees. Only activates for orders whose resolved destination is an EU member state.
Registration
import { pluginRegistry } from '@unchainedshop/core';
import { DeliveryEuTaxPlugin } from '@unchainedshop/plugins/pricing/delivery-eu-tax';
pluginRegistry.register(DeliveryEuTaxPlugin);
Or register both EU tax adapters (product + delivery) via the country preset:
import { registerEuTaxPlugins } from '@unchainedshop/plugins/presets/countries/eu';
registerEuTaxPlugins();
How It Works
- Resolves the destination country (delivery address → billing address → order country)
- Determines the tax category from the delivery provider's
eu-tax-categoryconfiguration entry, falling back to the destination country's standard rate - Resolves the rate valid at order time from the bundled per-country era tables and applies it to the taxable delivery fee rows
Rate data and category semantics are shared with the Product EU VAT adapter (bundled eu-tax-rates.json, era-based, EC-verified).
Configuration
mutation ConfigureDeliveryProvider {
updateDeliveryProvider(
deliveryProviderId: "provider-id"
deliveryProvider: {
configuration: [
{ key: "eu-tax-category", value: "reduced" }
]
}
) {
_id
}
}
Adapter Details
| Property | Value |
|---|---|
| Key | shop.unchained.pricing.delivery-eu-tax |
| Version | 1.0.0 |
| Order Index | 80 |
| Source | pricing/delivery-eu-tax/adapter.ts |
Related
- Product EU VAT - EU VAT for products
- Delivery Swiss Tax - Swiss VAT for delivery fees