Document schemas · Vehicle & Asset
Vehicle & Financed Asset
Prebuilt extractors for the documents involved in financing a vehicle or other financed asset: the registration certificate and its temporary variant, the non-pledge certificate, the vehicle invoice and the purchase order. Each one returns a structured document_part with the fields the extraction captures. Any document type below can also be processed with a custom extractor returning your own schema.
The part_type values and field layouts on this page describe Holofin's upcoming prebuilt extractors for these document types. They are not yet emitted by workflow runs.
If your workflow processes one of these document types with a custom extractor, each extracted part carries that extractor's own part_type and schema, which may differ from this page.
The authoritative schema is the one defined on the extractor in your workflow configuration.
Vehicle Registration Certificate (Carte grise)
fr_carte_grisePreviewVehicle & AssetThe Carte grise (certificat d'immatriculation) is the French vehicle registration certificate. The extraction returns the registered holder, the vehicle identification and technical characteristics, and the harmonised European field codes printed on the document. It is used to establish the vehicle identity and ownership when financing or verifying a financed asset.
Document structure
The carte grise contains:
- Registration Identity: Registration number (A), date of first registration (B), certificate date
- Holder: Name (C.1) and address (C.3) of the registered holder
- Vehicle Identification: Make (D.1), type/variant/version (D.2), commercial name (D.3), VIN (E)
- Technical Characteristics: Masses (F.1, F.2), engine capacity (P.1), fuel type (P.3), fiscal power (P.6), power-to-mass ratio (Q), seats (S.1), CO2 emissions (V.7)
Data structure
Within the document_parts array, the fr_carte_grise data object contains:
{
"registration_number": "AB-123-CD",
"first_registration_date": "2020-03-14",
"holder": {
"name": "MARTIN Camille",
"address": "12 rue des Lilas, 69003 LYON"
},
"make": "RENAULT",
"type_variant_version": "ZE1A / 1AB / 0002",
"commercial_name": "CLIO",
"vin": "VF1SPECIMEN000000",
"mass_f1": 1320,
"mass_f2": 1780,
"engine_capacity_cm3": 1461,
"fuel_type": "GO",
"fiscal_power": 5,
"power_to_mass": null,
"seats": 5,
"co2_g_km": 95,
"certificate_date": "2020-03-16"
}Field reference
| Field | Type | Description |
|---|---|---|
| registration_number | string | Registration plate number, field A |
| first_registration_date | date (ISO 8601 string) | Date of first registration, field B |
| holder | object | Registered holder (see below) |
| holder.name | string | Holder name, field C.1 |
| holder.address | string | Holder address, field C.3 |
| make | string | Vehicle make, field D.1 |
| type_variant_version | string | Type, variant and version, field D.2 |
| commercial_name | string | Commercial designation, field D.3 |
| vin | string | Vehicle identification number (VIN), field E |
| mass_f1 | number | Technically permissible maximum laden mass in kg, field F.1 |
| mass_f2 | number | Maximum authorised laden mass in service in kg, field F.2 |
| engine_capacity_cm3 | number | Engine displacement in cm3, field P.1 |
| fuel_type | string | Fuel or energy source code as printed, field P.3 (e.g. GO, ES, EL) |
| fiscal_power | number | Fiscal power in CV, field P.6 |
| power_to_mass | number | null | Power-to-mass ratio in kW/kg, field Q, when printed (mainly motorcycles); otherwise null |
| seats | number | Number of seats, field S.1 |
| co2_g_km | number | CO2 emissions in g/km, field V.7 |
| certificate_date | date (ISO 8601 string) | Date the registration certificate was issued |
Validation
Extraction results include a validation_status and validation_codes reflecting coherence, completeness and authenticity controls. Anomalies are surfaced as graded alerts for human review.
Temporary Registration Certificate (CPI)
fr_certificat_provisoire_immatriculationPreviewVehicle & AssetThe Certificat provisoire d'immatriculation (CPI) is the temporary French registration certificate issued while the definitive carte grise is produced. The extraction returns the provisional registration, the holder and the vehicle identification, together with the validity window. It lets a financed vehicle be identified before its definitive certificate is available.
Document structure
The CPI contains:
- Certificate Identity: CPI number, provisional registration, issuing authority
- Holder: Name of the registered holder
- Vehicle Identification: VIN, make and model
- Validity: Edition date and validity end date
Data structure
Within the document_parts array, the fr_certificat_provisoire_immatriculation data object contains:
{
"cpi_number": "CPI-2024-0009876",
"provisional_registration": "WW-123-XY",
"holder": "MARTIN Camille",
"vin": "VF1SPECIMEN000000",
"make": "RENAULT",
"model": "CLIO",
"edition_date": "2024-02-01",
"valid_until": "2024-03-02",
"issuing_authority": "ANTS"
}Field reference
| Field | Type | Description |
|---|---|---|
| cpi_number | string | Temporary certificate reference number |
| provisional_registration | string | Provisional registration plate (typically a WW series) |
| holder | string | Name of the registered holder |
| vin | string | Vehicle identification number (VIN) |
| make | string | Vehicle make |
| model | string | Vehicle model or commercial name |
| edition_date | date (ISO 8601 string) | Date the temporary certificate was issued |
| valid_until | date (ISO 8601 string) | Date the temporary certificate expires |
| issuing_authority | string | Authority that issued the certificate (e.g. ANTS or an approved professional) |
Validation
Extraction results include a validation_status and validation_codes reflecting coherence, completeness and authenticity controls. Anomalies are surfaced as graded alerts for human review.
Non-Pledge Certificate (Certificat de situation administrative)
fr_certificat_non_gagePreviewVehicle & AssetThe Certificat de situation administrative (commonly the certificat de non-gage) reports the administrative status of a vehicle: whether it carries a registered pledge and whether any opposition prevents its transfer. The extraction returns the vehicle reference, the pledge status and any oppositions, and is used to confirm that a financed vehicle is free of encumbrances.
Document structure
The certificat de situation administrative contains:
- Vehicle Reference: Registration number, VIN, date of first registration
- Holder: Name of the registered holder
- Administrative Status: Pledge status and list of oppositions, if any
- Issuance: Certificate date and issuing authority
Data structure
Within the document_parts array, the fr_certificat_non_gage data object contains:
{
"registration_number": "AB-123-CD",
"holder": "MARTIN Camille",
"vin": "VF1SPECIMEN000000",
"certificate_date": "2024-05-20",
"pledge_status": "none",
"oppositions": [],
"first_registration_date": "2020-03-14",
"issuing_authority": "Ministère de l'Intérieur"
}Field reference
| Field | Type | Description |
|---|---|---|
| registration_number | string | Registration plate number of the vehicle |
| holder | string | Name of the registered holder |
| vin | string | Vehicle identification number (VIN) |
| certificate_date | date (ISO 8601 string) | Date the certificate was issued |
| pledge_status | string | Registered pledge state: none (no gage) or pledged (a gage is recorded) |
| oppositions | array of strings | Recorded oppositions preventing transfer, each described as a string. Empty array when none apply |
| first_registration_date | date (ISO 8601 string) | Date of first registration of the vehicle |
| issuing_authority | string | Authority that issued the certificate |
Validation
Extraction results include a validation_status and validation_codes reflecting coherence, completeness and authenticity controls. Anomalies are surfaced as graded alerts for human review.
Vehicle Invoice (Facture du bien financé)
fr_facture_vehiculePreviewVehicle & AssetThe Facture du bien financé is the invoice for a financed vehicle. The extraction returns the seller and buyer, the invoice reference and dates, the vehicle identification and the amounts (excluding tax, VAT and including tax). It supports verification of the amount and asset being financed.
Document structure
The vehicle invoice contains:
- Seller: Name, SIRET and address of the issuing dealer or vendor
- Buyer: Name of the purchaser
- Invoice Header: Invoice number and invoice date
- Vehicle: Make, model, version, VIN, registration number and mileage
- Amounts: Amount excluding tax, VAT rate and amount, amount including tax, payment method
Data structure
Within the document_parts array, the fr_facture_vehicule data object contains:
{
"seller": {
"name": "Garage du Rhône SARL",
"siret": "12345678900012",
"address": "45 avenue de la République, 69003 LYON"
},
"buyer": "MARTIN Camille",
"invoice_number": "FA-2024-00782",
"invoice_date": "2024-02-15",
"vehicle": {
"make": "RENAULT",
"model": "CLIO",
"version": "Techno TCe 90",
"vin": "VF1SPECIMEN000000",
"registration_number": "AB-123-CD",
"mileage_km": 12500
},
"amount_excl_tax": 18325.0,
"vat_rate_pct": 20.0,
"vat_amount": 3665.0,
"amount_incl_tax": 21990.0,
"payment_method": "Virement bancaire"
}Field reference
| Field | Type | Description |
|---|---|---|
| seller | object | Issuing seller (see below) |
| seller.name | string | Seller legal or trading name |
| seller.siret | string | Seller SIRET identifier |
| seller.address | string | Seller postal address |
| buyer | string | Name of the purchaser |
| invoice_number | string | Invoice reference number |
| invoice_date | date (ISO 8601 string) | Date the invoice was issued |
| vehicle | object | Invoiced vehicle (see below) |
| vehicle.make | string | Vehicle make |
| vehicle.model | string | Vehicle model |
| vehicle.version | string | null | Trim or version label when printed, otherwise null |
| vehicle.vin | string | Vehicle identification number (VIN) |
| vehicle.registration_number | string | null | Registration plate when the vehicle is already registered, otherwise null |
| vehicle.mileage_km | number | null | Odometer reading in kilometres when printed, otherwise null |
| amount_excl_tax | number | Total amount excluding VAT |
| vat_rate_pct | number | VAT rate as a percentage (e.g. 20.0) |
| vat_amount | number | VAT amount |
| amount_incl_tax | number | Total amount including VAT |
| payment_method | string | null | Payment method as printed, otherwise null |
Validation
Extraction results include a validation_status and validation_codes reflecting coherence, completeness and authenticity controls. Anomalies are surfaced as graded alerts for human review.
Purchase Order (Bon de commande)
fr_bon_commandePreviewVehicle & AssetThe Bon de commande is the purchase order agreed between the seller and the customer for a financed asset. The extraction returns the parties, the order reference and date, the ordered line items and the amounts, along with the deposit, payment terms and whether the customer signature is present. It supports verification of the order underlying a financing request.
Document structure
The bon de commande contains:
- Seller: Name and SIRET of the issuing seller
- Customer: Name of the ordering customer
- Order Header: Order number and order date
- Line Items: Ordered items with description, reference, quantity and unit price
- Amounts and Terms: Amount excluding tax, VAT, amount including tax, deposit, payment terms and signature presence
Data structure
Within the document_parts array, the fr_bon_commande data object contains:
{
"seller": {
"name": "Garage du Rhône SARL",
"siret": "12345678900012"
},
"customer": "MARTIN Camille",
"order_number": "BC-2024-00341",
"order_date": "2024-01-20",
"items": [
{
"description": "RENAULT CLIO Techno TCe 90",
"reference": "VN-CLIO-TCE90",
"quantity": 1,
"unit_price_excl_tax": 18325.0
},
{
"description": "Peinture métallisée",
"reference": null,
"quantity": 1,
"unit_price_excl_tax": 600.0
}
],
"amount_excl_tax": 18925.0,
"vat_amount": 3785.0,
"amount_incl_tax": 22710.0,
"deposit": 2000.0,
"payment_terms": "Solde à la livraison",
"customer_signature_present": true
}Field reference
| Field | Type | Description |
|---|---|---|
| seller | object | Issuing seller (see below) |
| seller.name | string | Seller legal or trading name |
| seller.siret | string | Seller SIRET identifier |
| customer | string | Name of the ordering customer |
| order_number | string | Purchase order reference number |
| order_date | date (ISO 8601 string) | Date the order was placed |
| items | array | Ordered line items (see below) |
| items[].description | string | Line item description |
| items[].reference | string | null | Line item reference or code when printed, otherwise null |
| items[].quantity | number | Ordered quantity |
| items[].unit_price_excl_tax | number | Unit price excluding VAT |
| amount_excl_tax | number | Total amount excluding VAT |
| vat_amount | number | VAT amount |
| amount_incl_tax | number | Total amount including VAT |
| deposit | number | null | Deposit (acompte) paid at order when printed, otherwise null |
| payment_terms | string | null | Payment terms as printed, otherwise null |
| customer_signature_present | boolean | Whether a customer signature is present on the order |
Validation
Extraction results include a validation_status and validation_codes reflecting coherence, completeness and authenticity controls. Anomalies are surfaced as graded alerts for human review.