JSON analyse
{
"provider_detected": true,
"receipt_visible": true,
"receipt_complete": true,
"order_visible": true,
"glovo_number": "927",
"glovo_tracking_number": "101698537694",
"glovo_number_confidence": "high",
"items_count_receipt": 1,
"subtotal": 87,
"discount": 0,
"total": 87,
"total_source": "subtotal_minus_discount",
"main_items": [
{
"qty": 1,
"name": "Salade Généreuse",
"unit_price": 87,
"total_price": 87,
"must_be_visible": true,
"visual_status": "present",
"evidence": "Salade visible dans le bol en plastique avec couvercle.",
"reason": "Article principal visible."
}
],
"paid_internal_options": [
{
"qty": 1,
"name": "Pâtes",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
},
{
"qty": 1,
"name": "Carotte Râpée",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
},
{
"qty": 1,
"name": "Concombre",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
},
{
"qty": 1,
"name": "Mais",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
},
{
"qty": 1,
"name": "Oeufs",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
},
{
"qty": 1,
"name": "Olives Noires",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
},
{
"qty": 1,
"name": "Olives Vertes",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
},
{
"qty": 1,
"name": "Oignons Frais",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
},
{
"qty": 1,
"name": "Pomme de terre",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
},
{
"qty": 1,
"name": "Tomates Cerises",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
},
{
"qty": 1,
"name": "Avocat",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
},
{
"qty": 1,
"name": "Mozzarella",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Fromage interne dans la salade.",
"reason": "Option interne mélangée/non vérifiable visuellement. Ne doit pas bloquer la validation."
},
{
"qty": 1,
"name": "Poulet",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
},
{
"qty": 1,
"name": "Cesar",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Sauce interne de salade.",
"reason": "Option interne mélangée/non vérifiable visuellement. Ne doit pas bloquer la validation."
},
{
"qty": 1,
"name": "Oeufs",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
},
{
"qty": 1,
"name": "Olives",
"unit_price": null,
"total_price": null,
"must_be_visible": false,
"visual_status": "not_checkable",
"evidence": "Option interne de salade.",
"reason": "Option interne non vérifiable visuellement."
}
],
"paid_extras": [
{
"qty": 1,
"name": "Sauce sachet",
"unit_price": null,
"total_price": null,
"must_be_visible": true,
"visual_status": "present",
"evidence": "Petit sachet de sauce orange visible à droite du plat.",
"reason": "Extra visible séparé."
}
],
"ignored_components": [],
"visual_check": {
"main_items_seem_present": true,
"paid_extras_seem_present": true,
"missing_or_unclear_items": [],
"warnings": []
},
"status": "valid",
"confidence": 0.93,
"reasons": [
"Reçu Glovo Crisp & Co lisible.",
"Numéro Glovo court et tracking long visibles.",
"1 item indiqué sur le reçu.",
"Total lisible et cohérent avec le subtotal.",
"Article principal et extra sauce visibles."
],
"visible_evidence": {
"glovo_number": "glovo #927",
"tracking_number": "101698537694",
"items_count": "1 item",
"total": "MAD87",
"article_matching": "Salade Généreuse visible dans le bol; sachet de sauce orange visible à droite."
},
"agent_note": ""
}