Extract the following structured information from the provided invoice. Fill in only existing values. Strictly return a valid JSON following this schema: **Json schema** { "type": "object ", "properties": { "is_bill": { "type": "boolean", "description": "True if the document is an invoice, false otherwise." }, "profession": { "type": ["string", "null"], "description": "Type of healthcare profession, if it is presented in the list [Optique, Kinésiologie, Kinésithérapie, Pharmacie, Biologie, Psychologie, Infirmier, Ostéopathie, Dentaire, Sage-femme, Sophrologie, Soins hospitaliers, Orthopédie, Podologie, Diététique, Radiologie, Orthophonie, Pédiatrie, Assurance Maladie, Pompes funèbres, Laboratoire, Gynécologie-obstétrique, Chiropractie, Psychomotricité, Ostéodensitométrie, Pneumologie, Vaccins, Sevrage tabagique, Contraception, Homéopathie, Acupunture], Unknown otherwise." }, "adeli_number": { "type": ["string", "null"], "description": "Adeli number (9-digit identifier) associated with the healthcare provider" }, "rpps_number": { "type": ["string", "null"], "description": "11 digits identifier, indicated after the term 'RPPS'" }, "finess_number": { "type": ["string", "null"], "description": "9 digits identifier, indicated after one of the terms in list ['finess', 'identifiant CPAM']" }, "doctor_name": { "type": ["string", "null"], "description": "Full name of the doctor" }, "prescripteur_finess_number": { "type": ["string", "null"], "description": "Finess number of the prescriber in the invoice (9 digits identifier, indicated after the term 'finess')" }, "total_billed": { "type": ["number", "null"], "description": "The total amount billed on the invoice" }, "bill_paid": { "type": "boolean", "description": "True if the invoice has been paid, false otherwise (Look for terms like: 'acquittée', 'payée', 'quittance', 'réglée', 'certifie avoir reçu le règlement')" }, "amount_paid": { "type": ["number", "null"], "description": "The amount paid for the invoice" }, "mandatory_coverage": { "type": ["number", "null"], "description": "Amount covered by compulsory health insurance (indicated after terms like 'AMO', 'Rbmt RO', 'CAISSE', 'Noemie', etc.)" }, "complementary_coverage": { "type": ["number", "null"], "description": "Amount covered by complementary insurance (indicated after terms like 'AMC', 'RC', 'Mutuelle')" }, "client_part": { "type": ["number", "null"], "description": "Amount paid by client (indicated after terms like 'ASSURE', 'Part Client', 'Part Assuré')" }, "remaining_payment": { "type": ["number", "null"], "description": "The remaining balance to be paid by the beneficiary if the invoice is unpaid." }, "insured_name": { "type": ["string", "null"], "description": "Full name of the insured person (indicated after terms like 'Assure')" }, "insured_dob": { "type": ["string", "null"], "description": "Date of birth of the insured person (format: dd-mm-yyyy)" }, "beneficiary_name": { "type": ["string", "null"], "description": "Full name of the invoice beneficiary" }, "beneficiary_dob": { "type": ["string", "null"], "description": "Date of birth of the beneficiary (format: dd-mm-yyyy)" }, "invoice_date": { "type": ["string", "null"], "description": "Date of the invoice (format: dd-mm-yyyy)" }, "security_number": { "type": ["string", "null"], "description": "Social Security number (13 or 15 digit identifier, indicated after terms like 'Sécurité Social' ou 'N° INSEE' ou 'N° SS')" }, "invoice_issuer": { "type": ["string", "null"], "description": "Name or organization issuing the invoice or providing the service" }, "currency": { "type": ["string", "null"], "description": "Currency used (e.g., EUR, USD)" }, "items": { "type": "array", "description": "List of items or services included in the invoice.", "items": { "type": "object", "properties": { "description": { "type": ["string", "null"], "description": "Description of the item or service." }, "quantity": { "type": ["number", "null"], "description": "Quantity of the item or service." }, "date_of_service": { "type": ["string", "null"], "description": "Date of service (when the item was provided), in format dd-mm-yyyy." }, "mandatory_coverage": { "type": ["number", "null"], "description": "Amount covered by mandatory health insurance for this item." }, "amount": { "type": ["number", "null"], "description": "Total amount for the item (unit price * quantity)." } } } } } }