{
  "schema_version": "1.0.0",
  "name": "Genscom newspaper pricing agent configuration",
  "language": "nl-BE",
  "currency": "EUR",
  "vat": {
    "default_rate": 0.21,
    "default_percentage": 21,
    "calculation": "vat_amount = total_excl_vat * 0.21; total_incl_vat = total_excl_vat + vat_amount",
    "important": "21% is de aangeleverde standaard voor deze prijscalculator. Pas geen andere landspecifieke btw-regels toe zonder aanvullende fiscale configuratie."
  },
  "source_files": [
    "genscom-products.json",
    "genscom-print-coefficients.json",
    "genscom-shipping.json"
  ],
  "required_inputs": [
    "paper",
    "page_count",
    "quantity"
  ],
  "shipping_input": "destination_country_or_zone",
  "calculation_order": [
    "Controleer of paper, page_count en quantity geldig zijn.",
    "Controleer de beperkingen van de gekozen papiersoort.",
    "Zoek de exacte staffelcoëfficiënt voor page_count en quantity.",
    "production_price_per_copy_excl_vat = page_count * base_price_per_page_excl_vat_eur * coefficient.",
    "production_total_excl_vat = production_price_per_copy_excl_vat * quantity.",
    "weight_per_copy_g = weight_per_page_g * page_count.",
    "total_weight_kg = weight_per_copy_g * quantity / 1000.",
    "Als een bestemming is opgegeven: bepaal de verzendzone en selecteer de eerste gewichtsdrempel waarvoor total_weight_kg < max_weight_kg_exclusive.",
    "Als expressverzending is gekozen en beschikbaar is voor het bestemmingsland: tel €13,00 excl. btw toe aan de bestelling vóór de btw-berekening.",
    "total_excl_vat = production_total_excl_vat + shipping_excl_vat.",
    "vat_amount = total_excl_vat * vat.default_rate.",
    "total_incl_vat = total_excl_vat + vat_amount.",
    "Rond geldbedragen pas voor weergave af op 2 decimalen."
  ],
  "output_contract": {
    "paper_display_name": "string",
    "page_count": "integer",
    "quantity": "integer",
    "coefficient": "number",
    "base_price_per_page_excl_vat_eur": "number",
    "production_price_per_copy_excl_vat_eur": "number",
    "production_total_excl_vat_eur": "number",
    "weight_per_copy_g": "number",
    "total_weight_kg": "number",
    "shipping_zone": "string|null",
    "shipping_weight_band_max_kg_exclusive": "number|null",
    "shipping_excl_vat_eur": "number|null",
    "total_excl_vat_eur": "number",
    "vat_rate": "number",
    "vat_amount_eur": "number",
    "total_incl_vat_eur": "number"
  },
  "rounding": {
    "currency_decimals": 2,
    "weight_kg_decimals": 3,
    "method": "round_half_up_for_display_only"
  },
  "guardrails": [
    "Gebruik alleen expliciet opgenomen staffelcoëfficiënten.",
    "80gr krantenpapier is beperkt tot maximaal 12 pagina's.",
    "Bij een exact gewicht op een verzenddrempel geldt de volgende gewichtsklasse.",
    "Bij 300 kg of meer is verzending prijs op aanvraag.",
    "Zonder bestemming wordt geen verzendprijs berekend."
  ],
  "express_shipping": {
    "rule": "Expressverzending is optioneel en alleen beschikbaar voor België, Nederland, Duitsland, Frankrijk, Verenigd Koninkrijk en Luxemburg.",
    "surcharge_incl_vat_eur": 15.73,
    "surcharge_excl_vat_eur": 13.0,
    "delivery_time": "Binnen 2 werkdagen na drukdatum",
    "calculation": "Tel bij expressverzending €13,00 excl. btw toe aan total_excl_vat. Dit is €15,73 incl. 21% btw."
  }
}