{
    "uuid": "1eb440bebffb428b7f649ecb86c4efb6",
    "schema_kind": "intervention",
    "lang": "fr",
    "title": "Lettre de voiture - transport routier de marchandises",
    "description": "Lettre de voiture (national et international CMR) : parties, marchandise, trajet chargement/livraison, réserves et signatures. Modèle conforme aux mentions du contrat type national et de l'article 6 de la Convention CMR. Les lignes de marchandise à cardinalité variable relèvent des lignes de la fiche ; ce schéma porte les informations d'en-tête.",
    "export_date": "2026-07-08 00:00:00",
    "dolibarr_version": "18.0.0",
    "extrafields": [
        {
            "name": "ldv_numero",
            "label": "Numéro de lettre de voiture",
            "type": "varchar",
            "size": "64",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Référence unique du document (souvent générée automatiquement)",
            "pos": 100,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "ldv_date_etablissement",
            "label": "Date d'établissement",
            "type": "date",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Date de création de la lettre de voiture",
            "pos": 110,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "ldv_reference_commande",
            "label": "Référence de l'ordre de transport",
            "type": "varchar",
            "size": "128",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Référence de la commande du donneur d'ordre",
            "pos": 120,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "ldv_nature_transport",
            "label": "Nature du transport",
            "type": "select",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "national": "National (France)",
                    "international": "International (CMR)"
                }
            },
            "help": "Transport national ou international soumis à la Convention CMR",
            "pos": 130,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "expediteur_nom",
            "label": "Expéditeur - nom",
            "type": "varchar",
            "size": "255",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Nom de l'expéditeur (donneur d'ordre qui remet la marchandise)",
            "pos": 200,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0,
            "personal_data": 1
        },
        {
            "name": "expediteur_adresse",
            "label": "Expéditeur - adresse",
            "type": "text",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Adresse complète de l'expéditeur",
            "pos": 210,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0,
            "personal_data": 1
        },
        {
            "name": "destinataire_nom",
            "label": "Destinataire - nom",
            "type": "varchar",
            "size": "255",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Nom du destinataire à qui la marchandise est livrée",
            "pos": 220,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0,
            "personal_data": 1
        },
        {
            "name": "destinataire_adresse",
            "label": "Destinataire - adresse",
            "type": "text",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Adresse complète du destinataire",
            "pos": 230,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0,
            "personal_data": 1
        },
        {
            "name": "transporteur_nom",
            "label": "Transporteur - nom",
            "type": "varchar",
            "size": "255",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Entreprise qui réalise le transport",
            "pos": 240,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "transporteur_adresse",
            "label": "Transporteur - adresse",
            "type": "text",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Adresse du transporteur",
            "pos": 250,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "transporteur_siren",
            "label": "Transporteur - SIREN / licence",
            "type": "varchar",
            "size": "64",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Numéro SIREN et/ou licence de transport",
            "pos": 260,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "soustraitant_nom",
            "label": "Sous-traitant / affrété",
            "type": "varchar",
            "size": "255",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Transporteur sous-traitant ou affrété, le cas échéant",
            "pos": 270,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "marchandise_nature",
            "label": "Nature de la marchandise",
            "type": "varchar",
            "size": "255",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Dénomination courante de la marchandise",
            "pos": 300,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "marchandise_emballage",
            "label": "Mode d'emballage",
            "type": "varchar",
            "size": "128",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Palette, carton, vrac, fût, big-bag, etc.",
            "pos": 310,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "marchandise_nb_colis",
            "label": "Nombre de colis",
            "type": "int",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Quantité d'unités de manutention",
            "pos": 320,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "marchandise_marques",
            "label": "Marques et numéros",
            "type": "varchar",
            "size": "255",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Marques particulières et numéros des colis (exigé en CMR)",
            "pos": 330,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "marchandise_poids_brut",
            "label": "Poids brut (kg)",
            "type": "double",
            "size": "24,3",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Poids brut total de la marchandise en kilogrammes",
            "pos": 340,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "marchandise_volume",
            "label": "Volume (m3)",
            "type": "double",
            "size": "24,3",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Volume de la marchandise en mètres cubes, si pertinent",
            "pos": 350,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "marchandise_valeur",
            "label": "Valeur déclarée",
            "type": "price",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Valeur déclarée de la marchandise (assurance / intérêt spécial à la livraison)",
            "pos": 360,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "adr_dangereux",
            "label": "Marchandise dangereuse (ADR)",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Cocher si la marchandise relève de l'ADR",
            "pos": 400,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "adr_numero_onu",
            "label": "ADR - numéro ONU",
            "type": "varchar",
            "size": "32",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Numéro ONU de la matière dangereuse",
            "pos": 410,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "adr_classe",
            "label": "ADR - classe / groupe d'emballage",
            "type": "varchar",
            "size": "64",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Classification ADR et groupe d'emballage",
            "pos": 420,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "temperature_dirigee",
            "label": "Température dirigée",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Cocher si le transport est sous température dirigée",
            "pos": 430,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "temperature_consigne",
            "label": "Température de consigne (deg C)",
            "type": "double",
            "size": "6,2",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Température à respecter en degrés Celsius",
            "pos": 440,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "chargement_lieu",
            "label": "Lieu de chargement",
            "type": "text",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Adresse de prise en charge de la marchandise",
            "pos": 500,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "chargement_date",
            "label": "Date et heure de chargement",
            "type": "datetime",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Date et heure de la prise en charge",
            "pos": 510,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "livraison_lieu",
            "label": "Lieu de livraison",
            "type": "text",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Adresse de destination prévue",
            "pos": 520,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "livraison_date_prevue",
            "label": "Date et heure de livraison prévue",
            "type": "datetime",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Date et heure de livraison prévue",
            "pos": 530,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "delai_convenu",
            "label": "Délai convenu",
            "type": "varchar",
            "size": "128",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Délai de livraison contractuel, le cas échéant",
            "pos": 540,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "interdiction_transbordement",
            "label": "Interdiction de transbordement",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Cocher si la marchandise ne doit pas être transbordée",
            "pos": 550,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "distance_km",
            "label": "Distance (km)",
            "type": "double",
            "size": "10,1",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Distance prévue ou réalisée en kilomètres",
            "pos": 560,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "vehicule_immatriculation",
            "label": "Immatriculation du véhicule",
            "type": "varchar",
            "size": "32",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Plaque du véhicule tracteur ou porteur",
            "pos": 600,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0,
            "personal_data": 1
        },
        {
            "name": "remorque_immatriculation",
            "label": "Immatriculation de la remorque",
            "type": "varchar",
            "size": "32",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Plaque de la remorque ou du semi-remorque",
            "pos": 610,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0,
            "personal_data": 1
        },
        {
            "name": "conducteur_nom",
            "label": "Nom du conducteur",
            "type": "varchar",
            "size": "255",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Chauffeur ayant réalisé le transport",
            "pos": 620,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0,
            "personal_data": 1
        },
        {
            "name": "prix_transport",
            "label": "Prix du transport",
            "type": "price",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Montant du transport, s'il figure sur la lettre de voiture",
            "pos": 700,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "frais_accessoires",
            "label": "Frais accessoires",
            "type": "price",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Frais annexes (attente, hayon, manutention...)",
            "pos": 710,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "conditions_port",
            "label": "Conditions de port",
            "type": "select",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "port_paye": "Port payé",
                    "port_du": "Port dû",
                    "franco": "Franco"
                }
            },
            "help": "Qui supporte le prix du transport",
            "pos": 720,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "contre_remboursement",
            "label": "Contre-remboursement",
            "type": "price",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Somme à percevoir auprès du destinataire à la livraison",
            "pos": 730,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "modalites_paiement",
            "label": "Modalités de paiement",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Précisions éventuelles sur le paiement",
            "pos": 740,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "instructions_douane",
            "label": "Instructions douane / documents",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Instructions pour les formalités de douane et autres (international)",
            "pos": 800,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "instructions_livraison",
            "label": "Instructions de livraison",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Rendez-vous, étage, hayon, prise de rendez-vous, etc.",
            "pos": 810,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "assurance_marchandise",
            "label": "Assurance de la marchandise",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Instructions d'assurance données par l'expéditeur",
            "pos": 820,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "documents_remis",
            "label": "Documents remis au transporteur",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Liste des documents accompagnant la marchandise",
            "pos": 830,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "chargement_etat",
            "label": "État de la marchandise au chargement",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Constat visuel à la prise en charge",
            "pos": 900,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "chargement_reserves",
            "label": "Réserves au chargement",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Réserves éventuelles du transporteur à la prise en charge",
            "pos": 910,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "livraison_date_reelle",
            "label": "Date et heure de livraison réelle",
            "type": "datetime",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Livraison effective",
            "pos": 1000,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "livraison_nature_reserves",
            "label": "Nature des réserves à la livraison",
            "type": "select",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "aucune": "Aucune réserve",
                    "avarie": "Avarie",
                    "manquant": "Manquant",
                    "retard": "Retard",
                    "refus": "Refus"
                }
            },
            "help": "Type de réserve constatée à la livraison",
            "pos": 1010,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "livraison_reserves",
            "label": "Détail des réserves à la livraison",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Description des avaries, manquants ou retard constatés par le destinataire",
            "pos": 1020,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "livraison_signataire_nom",
            "label": "Nom et qualité du signataire",
            "type": "varchar",
            "size": "255",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Personne qui réceptionne (nom et fonction)",
            "pos": 1030,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0,
            "personal_data": 1
        }
    ],
    "pdf_layout": {
        "version": "1.1",
        "page": {
            "format": "A4",
            "orientation": "portrait",
            "margins": {
                "top": 20,
                "right": 15,
                "bottom": 20,
                "left": 15
            },
            "font_family": "helvetica",
            "font_size": 10
        },
        "header": {
            "title": "Lettre de voiture {ref}",
            "subtitle": "Transport routier de marchandises",
            "logo_placeholder": "top-right",
            "show_page_number": true,
            "show_generated_date": true
        },
        "footer": {
            "text": "Document généré via smartInterventions",
            "legal_mentions": "Lettre de voiture à conserver selon la réglementation en vigueur (Code des transports / Convention CMR)."
        },
        "sections": [
            {
                "id": "identification",
                "title": "Identification",
                "layout": "two_columns",
                "fields": [
                    "ldv_numero",
                    ".ref",
                    "ldv_date_etablissement",
                    "ldv_reference_commande",
                    "ldv_nature_transport"
                ]
            },
            {
                "id": "parties",
                "title": "Parties au contrat de transport",
                "layout": "two_columns",
                "fields": [
                    "expediteur_nom",
                    "expediteur_adresse",
                    "destinataire_nom",
                    "destinataire_adresse",
                    "transporteur_nom",
                    "transporteur_adresse",
                    "transporteur_siren",
                    "soustraitant_nom"
                ]
            },
            {
                "id": "marchandise",
                "title": "Marchandise transportée",
                "layout": "two_columns",
                "fields": [
                    "marchandise_nature",
                    "marchandise_emballage",
                    "marchandise_nb_colis",
                    "marchandise_marques",
                    "marchandise_poids_brut",
                    "marchandise_volume",
                    "marchandise_valeur"
                ]
            },
            {
                "id": "conditions_speciales",
                "title": "Conditions spéciales",
                "layout": "two_columns",
                "description": "Marchandise dangereuse et transport sous température dirigée.",
                "fields": [
                    "adr_dangereux",
                    "adr_numero_onu",
                    "adr_classe",
                    "temperature_dirigee",
                    "temperature_consigne"
                ]
            },
            {
                "id": "trajet",
                "title": "Trajet : chargement et livraison",
                "layout": "two_columns",
                "fields": [
                    "chargement_lieu",
                    "chargement_date",
                    "livraison_lieu",
                    "livraison_date_prevue",
                    "delai_convenu",
                    "interdiction_transbordement",
                    "distance_km"
                ]
            },
            {
                "id": "vehicule",
                "title": "Véhicule et conducteur",
                "layout": "two_columns",
                "fields": [
                    "vehicule_immatriculation",
                    "remorque_immatriculation",
                    "conducteur_nom"
                ]
            },
            {
                "id": "financier",
                "title": "Conditions financières",
                "layout": "two_columns",
                "fields": [
                    "prix_transport",
                    "frais_accessoires",
                    "conditions_port",
                    "contre_remboursement",
                    "modalites_paiement"
                ]
            },
            {
                "id": "instructions",
                "title": "Instructions et mentions particulières",
                "layout": "single_column",
                "fields": [
                    "instructions_douane",
                    "instructions_livraison",
                    "assurance_marchandise",
                    "documents_remis"
                ]
            },
            {
                "id": "prise_en_charge",
                "title": "Prise en charge au chargement",
                "layout": "single_column",
                "fields": [
                    "chargement_etat",
                    "chargement_reserves"
                ]
            },
            {
                "id": "photos_chargement",
                "title": "Photos au chargement",
                "layout": "photos",
                "columns": 2,
                "caption_template": "Photo {n} - {label}",
                "fields": [
                    "smartphoto_avant"
                ]
            },
            {
                "id": "livraison",
                "title": "Livraison",
                "layout": "highlight_box",
                "fields": [
                    "livraison_date_reelle",
                    "livraison_nature_reserves",
                    "livraison_reserves"
                ]
            },
            {
                "id": "photos_livraison",
                "title": "Photos à la livraison",
                "layout": "photos",
                "columns": 2,
                "caption_template": "Photo {n} - {label}",
                "fields": [
                    "smartphoto_apres"
                ]
            },
            {
                "id": "signatures",
                "title": "Signatures",
                "layout": "signature_block",
                "fields": [
                    "livraison_signataire_nom"
                ],
                "signature_boxes": [
                    {
                        "label": "Signature de l'expéditeur (au chargement)",
                        "for_field": null
                    },
                    {
                        "label": "Signature du destinataire (à la livraison)",
                        "for_field": null
                    }
                ]
            }
        ],
        "field_render": {
            "marchandise_poids_brut": {
                "suffix": " kg",
                "format": "number"
            },
            "marchandise_volume": {
                "suffix": " m3",
                "format": "number"
            },
            "temperature_consigne": {
                "suffix": " deg C",
                "format": "number"
            },
            "distance_km": {
                "suffix": " km",
                "format": "number"
            },
            "marchandise_valeur": {
                "format": "currency"
            },
            "prix_transport": {
                "format": "currency"
            },
            "frais_accessoires": {
                "format": "currency"
            },
            "contre_remboursement": {
                "format": "currency"
            },
            "ldv_date_etablissement": {
                "format": "date_short"
            },
            "chargement_date": {
                "format": "datetime"
            },
            "livraison_date_prevue": {
                "format": "datetime"
            },
            "livraison_date_reelle": {
                "format": "datetime"
            },
            "livraison_nature_reserves": {
                "style": "highlight",
                "color_by_value": {
                    "aucune": "#1f8a1f",
                    "avarie": "#c00000",
                    "manquant": "#c00000",
                    "retard": "#e69500",
                    "refus": "#c00000"
                }
            },
            "chargement_reserves": {
                "min_height": 20,
                "show_if_empty": false
            },
            "livraison_reserves": {
                "min_height": 20,
                "show_if_empty": false
            },
            "instructions_douane": {
                "min_height": 15,
                "show_if_empty": false
            },
            "instructions_livraison": {
                "min_height": 15,
                "show_if_empty": false
            }
        }
    }
}
