pos.order : champs, relations et API
Le modèle pos.order (« Commande point de vente ») est un modèle persistant déclaré par le module Point de Vente, puis enrichi par 17 autres modules. Il expose 106 champs, dont 85 déclarés directement sur le modèle ; 16 champs d'autres modèles pointent vers lui. Retrouvez ci-dessous chaque champ avec son nom technique, son type, son libellé français et ses relations, puis un exemple d'appel à l'API JSON-2 d'Odoo 20.
Fiche d'identité
- Nom technique
pos.order- Libellé
- Commande point de vente
- Type
- Persistant (models.Model)
- Table SQL
pos_order- Module d'origine
- Point de Vente (
point_of_sale) - Étendu par
- l10n_fr_pos_cert, pos_adyen, pos_event, pos_sale, pos_hr, pos_restaurant, pos_loyalty, pos_stock, pos_mrp, pos_online_payment, pos_self_order, pos_online_payment_self_order, pos_sale_delivery, pos_sale_stock, pos_self_order_event, pos_sms, pos_self_order_sms
- Tri par défaut (_order)
date_order desc, name desc, id desc- Hérite de (mixins)
- portal.mixinpos.bus.mixinpos.order.receiptpos.load.mixinmail.thread
Champs du modèle
85 champs propres, 15 hérités des mixins et 6 champs automatiques de l'ORM. Cliquez sur un nom pour obtenir le lien direct vers le champ.
106 champs affichés sur 106
| Nom technique | Libellé | Type | Détails |
|---|---|---|---|
| account_move | Facture | many2one | lecture seule |
| active_payment_programs | Active Payment Programs | json | ajouté par Point of Sale - Coupons & Loyalty ( |
| active_rewards | Active Rewards | json | ajouté par Point of Sale - Coupons & Loyalty ( |
| amount_difference | Différence | monetary | lecture seule |
| amount_paid | Payé | monetary | requis |
| amount_return | Retourné | monetary | requislecture seule |
| amount_tax | Taxes | monetary | requislecture seule |
| amount_total | Total | monetary | requislecture seule |
| applied_codes | Applied Codes | json | ajouté par Point of Sale - Coupons & Loyalty ( |
| attendee_count | Nombre de participants | integer | calculé ajouté par POS - Event ( |
| available_payment_method_ids | Modes de paiement disponibles | many2many | lecture seule related : |
| cashier | Nom du caissier | char | calculé, stocké ajouté par POS - HR ( |
| company_id | Société | many2one | requislecture seule |
| config_id | Point de Vente | many2one | calculé, stocké |
| country_code | Code du pays | char | related : |
| course_ids | Cours | one2many | inverse : ajouté par Restaurant ( |
| crm_team_id | Équipe commerciale | many2one→ crm.team | ajouté par POS - Sales ( |
| currency_id | Devise | many2one | related : |
| currency_rate | Taux de change Le taux de conversion de la devise vers la devise de taux applicable à la date de la commande | float | lecture seulecalculé, stocké |
| customer_count | Invités Le nombre de clients qui ont été servis par cette commande. | integer | lecture seule ajouté par Restaurant ( |
| date_order | Date | datetime | lecture seule |
| defer_invoice_pdf | Defer Invoice PDF Generation | boolean | |
| disabled_program_ids | Disabled Program | json | ajouté par Point of Sale - Coupons & Loyalty ( |
| duration | Durée Shows how long the table has been occupied. | char | calculé ajouté par Restaurant ( |
char | calculé, stocké | ||
| employee_id | Caissier L'employé qui utilise la caisse enregistreuse. | many2one | ajouté par POS - HR ( |
| failed_pickings | Échec des transferts | boolean | calculé ajouté par PoS - Stock ( |
| fiscal_position_id | Position fiscale | many2one | |
| floating_order_name | Nom de commande | char | |
| general_customer_note | Note générale du client | text | |
| has_deleted_line | A une ligne supprimée | boolean | |
| has_refundable_lines | A des lignes remboursables | boolean | calculé |
| internal_note | Note interne | text | |
| invoice_status | Statut de la facture | selection | calculé Valeurs : |
| is_edited | Modifié | boolean | calculé |
| is_globally_invoiced | Is Globally Invoiced | boolean | calculé |
| is_refund | Note de crédit | boolean | lecture seule |
| is_singly_invoiced | Is Singly Invoiced | boolean | calculé |
| is_tipped | Est-ce que c'est déjà fait ? | boolean | lecture seule |
| is_total_cost_computed | Est le coût total calculé Permet de savoir si tous les coûts totaux des lignes de commande ont déjà été calculés | boolean | calculé |
| l10n_fr_hash | Hachage d'inaltérabilité | char | lecture seule ajouté par France - VAT Anti-Fraud Certification for Point of Sale (CGI 286 I-3 bis) ( |
| l10n_fr_secure_sequence_number | Numéro de séquence sans écart pour inaltérabilité | integer | lecture seule ajouté par France - VAT Anti-Fraud Certification for Point of Sale (CGI 286 I-3 bis) ( |
| l10n_fr_string_to_hash | Texte à hacher | char | lecture seulecalculé ajouté par France - VAT Anti-Fraud Certification for Point of Sale (CGI 286 I-3 bis) ( |
| lines | Lignes de commande | one2many | inverse : |
| margin | Marge | monetary | calculé |
| margin_percent | Marge (%) | float | calculé |
| mobile | Mobile | char | calculé, stocké |
| name | Réf. de la commande | char | requislecture seule |
| nb_print | Nombre d'Impressions | integer | lecture seule |
| next_online_payment_amount | Montant du prochain paiement en ligne | float | ajouté par Point of Sale online payment ( |
| online_payment_method_id | Mode de paiement en ligne | many2one | calculé ajouté par Point of Sale online payment ( |
| partner_id | Client | many2one | |
| payment_ids | Paiements | one2many | inverse : |
| picking_count | Nombre de transferts | integer | calculé ajouté par PoS - Stock ( |
| picking_ids | Transfert | one2many | inverse : ajouté par PoS - Stock ( |
| picking_type_id | Type d'opération | many2one | related : ajouté par PoS - Stock ( |
| pos_reference | Numéro de reçu | char | lecture seule |
| pos_version | Version du PdV Version d'Odoo utilisée pour la création de la commande | char | lecture seule ajouté par France - VAT Anti-Fraud Certification for Point of Sale (CGI 286 I-3 bis) ( |
| prep_order_ids | Preparation orders | one2many | inverse : |
| preset_id | Préréglage | many2one | |
| preset_time | Heure Heure de la commande | datetime | |
| previous_order_id | Commande précédente | many2one | lecture seulecalculé, stocké ajouté par France - VAT Anti-Fraud Certification for Point of Sale (CGI 286 I-3 bis) ( |
| pricelist_id | Liste de prix | many2one | |
| print_history | Print History | json | |
| refund_orders_count | Nombre de commandes remboursées Nombre de commandes pour lesquelles des articles de cette commande ont été remboursés | integer | calculé |
| refunded_order_id | Commande remboursée Commande pour laquelle des articles ont été remboursés dans cette commande | many2one | calculé |
| reversed_move_ids | Écritures de contrepassation Liste des pièces comptables créées lorsque cette commande du point de vente a été contrepassée et facturée après la clôture de la session. | one2many | inverse : |
| sale_journal | Journal de vente | many2one | lecture seule related : |
| sale_order_count | Nombre de commandes clients | integer | lecture seulecalculé ajouté par POS - Sales ( |
| self_ordering_table_id | Référence de table | many2one | lecture seule ajouté par POS Self Order ( |
| sequence_number | Numéro de séquence Numéro de séquence unique de session pour la commande. Négatif si généré par le client. | integer | |
| session_id | Session | many2one | |
| shipping_date | Date d'expédition | date | ajouté par PoS - Stock ( |
| source | Origine | selection | Valeurs : |
| state | Statut | selection | lecture seule Valeurs : |
| stock_reference_ids | Référence | many2many | ajouté par PoS - Stock ( |
| table_id | Table La table où cette commande a été servie | many2one | lecture seule ajouté par Restaurant ( |
| table_stand_number | Numéro de table | char | ajouté par POS Self Order ( |
| ticket_code | Code du ticket Code alphanumérique à 5 chiffres à utiliser par l'utilisateur du portail pour demander une facture | char | |
| tip_amount | Montant du pourboire | monetary | lecture seule |
| to_invoice | À facturer | boolean | |
| tracking_number | Numéro de commande | char | lecture seule |
| use_self_order_online_payment | Utiliser le paiement en ligne de la commande autonome | boolean | lecture seulecalculé, stocké ajouté par POS Self-Order / Online Payment ( |
| user_id | Employé Employé qui utilise la caisse enregistreuse. | many2one | |
| uuid | UUID | char | lecture seule |
| access_token | Jeton de sécurité | char | hérité de portal.mixin |
| access_url | URl d'accès au portail URl du portail client | char | calculé hérité de portal.mixin |
| access_warning | Avertissement d'accès | text | calculé hérité de portal.mixin |
| has_message | A un message | boolean | calculé hérité de mail.thread |
| message_attachment_count | Nombre de pièces jointes | integer | calculé hérité de mail.thread |
| message_follower_ids | Abonnés | one2many | inverse : hérité de mail.thread |
| message_has_error | Erreur d'envoi du message Si coché, certains messages ont une erreur de livraison. | boolean | calculé hérité de mail.thread |
| message_has_error_counter | Nombre d'erreurs Nombre de messages avec des erreurs d'envoi | integer | calculé hérité de mail.thread |
| message_has_sms_error | Erreur d'envoi SMS Si coché, certains messages ont une erreur de livraison. | boolean | calculé hérité de mail.thread |
| message_ids | Messages | one2many | inverse : hérité de mail.thread |
| message_is_follower | Est un abonné | boolean | calculé hérité de mail.thread |
| message_needaction | Nécessite une action Si coché, de nouveaux messages demandent votre attention. | boolean | calculé hérité de mail.thread |
| message_needaction_counter | Nombre d'actions Nombre de messages nécessitant une action | integer | calculé hérité de mail.thread |
| message_partner_ids | Abonnés (Partenaires) | many2many | calculé hérité de mail.thread |
| rating_ids | Évaluations | one2many | inverse : hérité de mail.thread |
| create_date | Créé le | datetime | lecture seuleautomatique |
| create_uid | Créé par | many2one | lecture seuleautomatique |
| display_name | Nom affiché | char | lecture seulecalculéautomatique |
| id | ID | integer | lecture seuleautomatique |
| write_date | Dernière mise à jour le | datetime | lecture seuleautomatique |
| write_uid | Dernière mise à jour par | many2one | lecture seuleautomatique |
Relations
Modèles liés depuis ce modèle
- account.fiscal.position : fiscal_position_id
- account.journal : sale_journal
- account.move : account_move, reversed_move_ids
- crm.team : crm_team_id
- hr.employee : employee_id
- pos.config : config_id
- pos.order : previous_order_id, refunded_order_id
- pos.order.line : lines
- pos.payment : payment_ids
- pos.payment.method : available_payment_method_ids, online_payment_method_id
- pos.prep.order : prep_order_ids
- pos.preset : preset_id
- pos.session : session_id
- product.pricelist : pricelist_id
- res.company : company_id
- res.currency : currency_id
- res.partner : partner_id
- res.users : user_id
- restaurant.order.course : course_ids
- restaurant.table : self_ordering_table_id, table_id
- stock.picking : picking_ids
- stock.picking.type : picking_type_id
- stock.reference : stock_reference_ids
Champs d'autres modèles qui pointent ici
- account.move : reversed_pos_order_id
- account.payment : pos_order_id
- account.sale.closing : last_order_id
- event.registration : pos_order_id
- loyalty.card : source_pos_order_id
- payment.transaction : pos_order_id
- pos.order : previous_order_id, refunded_order_id
- pos.order.line : order_id
- pos.pack.operation.lot : order_id
- pos.payment : pos_order_id
- pos.prep.order : pos_order_id
- report.pos.order : order_id
- restaurant.order.course : order_id
- stock.picking : pos_order_id
- stock.reference : pos_order_ids
Lire ce modèle par l'API
Exemple d'appel à l'API JSON-2 d'Odoo 20 : lecture des cinq premiers enregistrements avec des champs réels du modèle. Remplacez l'instance, la base et la clé API par les vôtres.
curl -X POST "https://votre-instance.odoo.com/json/2/pos.order/search_read" \
-H "Authorization: bearer $ODOO_API_KEY" \
-H "X-Odoo-Database: votre-base" \
-H "Content-Type: application/json" \
-d '{"domain":[],"fields":["name","amount_paid","amount_return","amount_tax","amount_total"],"limit":5}'import requests
BASE_URL = "https://votre-instance.odoo.com/json/2"
headers = {"Authorization": f"bearer {API_KEY}", "X-Odoo-Database": "votre-base"}
res = requests.post(
f"{BASE_URL}/pos.order/search_read",
headers=headers,
json={"domain": [], "fields": ["name","amount_paid","amount_return","amount_tax","amount_total"], "limit": 5},
)
res.raise_for_status()
print(res.json())- L'accès à l'API externe est réservé à la formule Custom d'Odoo.
- XML-RPC et JSON-RPC seront retirés dans Odoo 22 (automne 2028) : préférez JSON-2.
- Les droits d'accès et règles d'enregistrement de l'utilisateur de la clé s'appliquent.
Citer cet outil
Vous rédigez un tutoriel, une documentation interne ou une réponse sur un forum ? Copiez ce lien pour renvoyer vos lecteurs vers la fiche à jour.
<a href="https://aidoo.ai/fr/outils/explorateur-modeles-odoo/pos-order">pos.order (Odoo 20.0)</a>Sources
- Code source du modèle sur GitHub
- Documentation Odoo 20 : ORM API
- Documentation Odoo 20 : API externe JSON-2
Données vérifiées le 25 septembre 2026 · Odoo 20.0 Community
Vous avez un projet Odoo ou souhaitez exploiter votre ERP avec l'IA ? Échangeons
Intégration, développement de modules, connexion de Claude ou ChatGPT à vos données : décrivez-nous votre contexte, nous vous répondons sous 24 heures ouvrées.