Fonctionnalités/Modules supplémentaires POS

Modifier les quantités dans le PdV avec le clavier

Le module pos_keyboard permet d'adapter la quantité de l'article scanné dans le point de vente en utilisant le clavier (réel) au lieu d'utiliser le pavé numérique sur l'écran.

image-1616576510893.png

Ce module possède une dépendance sur le module ; point_of_sale

 

Envoyer le ticket de caisse par mail à votre client

Pendant la session de vente

Le module pos_mail_receipt permet l'envoi par mail du ticket de caisse de votre client.

Au-dessus du ticket de caisse apparait le bouton "@Reçu".

Si le client sélectionné a une adresse email renseignée, cela va être envoyé :

image-1613380325354.png

Le bouton @Reçu devient vert seulement si un mail a bien été généré (et est dans la "queue" de sortie). S'il y a une perte de connexion internet par exemple, le bouton restera grisé et un pop up d'erreur rouge sera affiché.

Tant que le mail est généré, le bouton "commande suivante" est grisé (impossible de cliquer dessus). Cela dure une fraction de seconde en réalité quand on est en condition normale.

Le mail envoyé peut être configuré.

Si le client sélectionné n’a pas de mail renseigné sur sa fiche ou aucun client n’a été sélectionné, Odoo propose d’encoder l’adresse email à laquelle envoyer le mail (cette adresse ne sera pas sauvegardée dans Odoo) :

image-1613380547899.png

Au clic “OK”, le message sera directement envoyé.

Ce module possède une dépendance sur le module  point_of_sale.

Après la session de vente (back-end)

Il est possible de renvoyer le ticket de caisse depuis la back-end grâce au module pos_print_receipt_backend.

Se rendre dans Point de Vente < Commandes < "Commandes" et sélectionner la vente au client désirée.

Cliquer sur le bouton "Send &  Print Receipt".

Le contenu du mail envoyé peut être configuré. Il se nomme "POS Order Receipt: Send by email"

Vérifier qu'un ticket a été envoyé au client

Dans le back-end, sur la commande du client, une petite case est cochée pour indiquer qu'un ticket a été envoyé en caisse.

Se rendre dans Point de Vente < Commandes < Commandes et sélectionner la vente au client désirée.

Il y a 2 cases :

image-1625673261039.png

 

Améliorer l'interface de caisse sur le Point de Vente [Compléter]

Le module beesdoo_pos apporte quelques modifications dans l'utilisation du point de vente ;

1. Empêche l'enregistrement de nouveaux clients depuis le POS.

image-1616420927556.png

image-1616421080271.png

2. Grâce à ce module, si les 2 cases "peut être vendu” et “disponible dans le point de vente” (cette dernière se trouve dans l'onglet Vente) sont cochées “et que l'on décoche “peut être vendu”, la prochaine fois que l'on coche la case “peut être vendu”, la case “disponible dans le point de vente” sera déjà cochée.

Cela évite un deuxième clic lorsqu’un article est à nouveau disponible à la vente.

Voir lien Cases à cocher de la fiche article.

3. Adaptation des droits d'accès caissier pour pouvoir fermer la caisse.

Corriger les erreurs d'arrondis lors de la fermeture d'une caisse

Le module pos_order_taxes_fix ajoute le bouton "Fix POS Orders taxes amount" lors de la fermeture d'une caisse permettant de clôturer une session qui refuse d’être fermée à cause d’erreurs d’arrondis sur les taxes. Ce bouton permet ainsi de forcer la correction dans le back-end.

Il est tout de même conseillé de configurer les caisses pour que l’arrondi soit global (et non ligne par ligne).

image-1616573369662.png

Ce module possède une dépendance sur le module : point_of_sale

Gérer le paiement arrondi en caisse

  1. Allez dans "Paramètres"
  2. Cliquez sur "Point de vente"
  3. Défilez jusqu'à trouver la section "Paiement"
  4. Cochez la case "Arrondi des paiements en espèces"
  5. Créez une nouvelle méthode d'arrondi
  6. Enregistrez

image.png

Ensuite, cliquez sur la flèche vers le lien externe afin de configurer la méthode d'arrondi.

image.png

  1. Modifiez la précision de l'arrondi
  2. Choisissez les comptes de profit et de pertes
  3. Choisissez la méthode d'arrondi

image.png

Lorsque vous démarrez une nouvelle session dans point de vente :

  1. Choisissez un article
  2. Cliquez sur paiement

image.png

Le montant a bien été arrondi automatiquement :

image.png

Une ligne d'arrondi est également ajoutée sur le ticket de caisse : 

image.png

Faciliter la recherche d'article dans le PdV - Retrait de la sensibilité aux accents

image-1616577210818.png

Ainsi en tapant "Accent", l'article "Test Àccêñt" apparait.

Ce module possède une dépendance sur le module ; point_of_sale

Faciliter le comportement de recherche sur le PdV (clic/reset recherche)

Le module pos_reset_search facilite le comportement de recherche sur le point de vente de façon à ce que lorsque vous effectuer une recherche d'article dans votre caisse et que vous cliquez sur l'article trouvé pour l'ajouter.

image-1616577841018.png

Ce clic "reset" votre recherche, facilitant l'encodage des articles suivants.

image-1616577856317.png

Ce module possède une dépendance sur le module ; point_of_sale

Limitation connue sur pos_reset_search

Lorsque ce module n’est pas installé, si l'on effectue une recherche dans le PdV, puisque l’on clique sur le produit recherché, il est possible de rentrer directement la quantité de ce même produit en tapant la quantité au clavier.

Avec ce module, il faut d’abord cliquer sur la ligne du produit avant de pouvoir entrer la quantité.

 

 

Améliorations à la sélection des clients dans le point de vente

Afficher les informations du client dans le PdV

Le module pos_partner_firstname permet lors de la sélection du client dans le PdV, de séparer le nom et prénom ainsi que d'afficher les informations supplémentaires encodées dans son profil.

image-1616578887111.png

Ce module possède une dépendance sur les modules point_of_sale et partner_firstname

 

Empêcher la création de clients depuis l'interface de caisse

Le module pos_partner_no_create empêche de créer un client depuis la liste des clients dans le point de vente (pour éviter les doublons créés par erreur).

 

Cacher les adresses et téléphones

Le module pos_hide_partner_info cache l'adresse et le numéro de téléphone sur la liste des clients lors d'une recherche via le point de vente, afin de protéger ces données.

 

Sélectionner un client par défaut dans le point de vente

Le module pos_default_partner permet d'ajouter un client chargé par défaut dans le point de vente.

Pour le configurer, aller dans la configuration du point de vente.

1.png

Ce module n'affiche pas le client par défaut, mais si aucun client n'est sélectionné, Odoo met le le pos order créé au nom du client par défaut.

 

Scanner le code barre de prix d'un article et en calculer le poids

Le module pos_price_to_weight étend les fonctionnalités d'Odoo Point de Vente, pour permettre de scanner en caisse un code barre de prix d'un article et d'en calculer le poids correspondant. 

Dans Odoo par défaut, il existe trois types de règles de codes-barres pour les produits.

Ce module ajoute une nouvelle option:

image-1616583009338.png

Ce module est utile dans les magasins avec des produits mis à l'échelle, pour gérer correctement les quantités de stock.

Exemple :

Étant donné un produit avec un prix unitaire de 1,50 € / kg
Le code-barres est 0212345 {NNNDD} x où:
02 est le préfixe de la règle du code-barres
12345 est le numéro du produit
{NNNDD} est le prix du produit mis à l'échelle
x est le chiffre de contrôle

si {NNNDD} est 00265, le prix est donc 2,65 € et la quantité correspondante est 2,65 € / 1,5 € / kg = 1,767 kg

https://raw.githubusercontent.com/OCA/pos/12.0/pos_price_to_weight/static/description/pos_test_1.png

Si {NNNDD} est 00810, le prix est donc 8,10 € et la quantité correspondante est 8,10 € / 1,5 € / kg = 5,400 kg

https://raw.githubusercontent.com/OCA/pos/12.0/pos_price_to_weight/static/description/pos_test_2.png

Pour mettre en place cette fonctionnalité :

  • Allez dans votre Point de Vente < Configuration < "Nomenclature de code-barre"
  • Modifiez vos règles de codes à barres, en fonction de vos paramètres de codes à barres

    image-1616584674342.png

  • Allez dans Point de Vente < Configuration < "Point de Vente"
  • Selectionnez ‘Unit Price’ field qui sera utilisé pour convertir le prix en poids.

image-1616584806426.png

Ce module possède une dépendance sur le module ; point_of_sale

Mettre une valeur par défaut de quantité sur base de la catégorie d'unité

Ce module a été créé pour réduire les erreurs en caisse lors de la sélection d'un article dont il faut modifier manuellement la quantité (par exemple un article au kg, quand une balance n'est pas connectée au point de vente). En indiquant par défaut une quantité énorme, cela force le caissier à encoder une valeur réaliste.

Le module pos_default_quantity ajoute un champ "pos quantity"="Quantité PdV" sur les catégories d'unités de mesure.

Par exemple ici sur la catégorie "Poids" :

image-1622202188638.png

Sur chaque point de vente, il faut modifier la configuration pour cocher "Sets default product quantity in POS" :

image-1622202506570.png

Lors de l'ajout d'un produit à une commande de point de vente, ce module introduit automatiquement la quantité pré-définie.

image-1622202546195.png

 

 

Vérifier que toutes les lignes dans le Point de Vente ont une quantité non-nulle

Le module pos_require_product_quantity permet de vérifier que toutes les lignes du PdV ont bien une quantité définie non nulle.

Ainsi lors de l'encodage des produits en caisse et qu'une mauvaise manipulation a lieu, un pop-up s'affichera lors de la validation du paiement comme montré ci-dessous.

image-1616591822718.png

image-1616591880310.png

Ce module possède une dépendance sur le module : point_of_sale

 

Retrait des lignes du PdV dont la quantité est "0" [Completer]

Le module pos_remove_0_qty retire les lignes dont la quantité est définie sur 0, elles sont supprimées avant le traitement de la commande.

Cela permet de corriger le problème de prélèvement lorsqu'il y a deux lignes sur la commande de Point de Vente pour le même produit, avec l'une des lignes dont la quantité est 0.

 

Cacher les catégories et minimiser la zone de recherche

Cacher les catégories et rendre plus discrète la zone de recherche

Prérequis : le module pos_category_display doit être installé.

Objectif : ce module a été créé pour encourager les caissiers à scanner les articles plutôt qu'à effectuer une recherche manuelle, de manière à réduire le risque d'erreur en caisse.

Ce module permet de configurer dans la configuration générale du module Point de Vente une option d'affichage.

image-1619183223367.png

L'option "Full" ne change rien à l'affichage standard du point de vente.

L'option "Minimized" modifie l'affichage en supprimant les catégories et en rendant le champs de recherche plus discret.

image-1619183423235.png

 

 

Comment transférer des ventes du comptoir fromage vers les caisses ?

Cas d'utilisation

Dans une épicerie, il y a un comptoir fromage séparé des caisses. Au comptoir fromage, le vendeur fournit au client un papier avec les poids de chaque article pesé. Ce papier est retranscrit à la caisse ce qui occasionne pas mal d'erreurs d'encodage.
L'idéal serait que le vendeur puisse pré-encoder une commande qui serait reprise à la caisse pour faire le total avec les autres articles achetés.

Solution : combinaison de 2 modules OCA

Il y a 2 modules qu'on peut combiner pour répondre à ce besoin :

Il permet de générer un bon de commande de vente (SO) depuis une session de POS.

Il doit être utilisé au comptoir des produits frais, sans aller jusqu'au paiement (donc installer un point de vente et ouvrir une session au comptoir). (Limitation fournie par le développeur sur ce module : obligation de choisir un client ; impossiblité de charger plusieurs picking pour un même pos.order.)

Il permet de rapatrier dans le POS (donc à la caisse finale) des bons de livraison (picking).

PoS Order To Sale Order

Configuration pour la caisse de comptoir :

image-1622560998346.png

Utilisation :

Il faut sélectionner un client afin que le système puisse créer un bon de commande de vente au nom de ce client.

image-1622561186176.png

image-1622561220482.pngimage-1622561229847.png

Confirmer le pop-up. Le panier est ensuite vide :

image-1622561240969.png

Dans le back-end, il y a bien une vente enregistrée dans le module “Vente” en statut Confirmé :

image-1622561312291.png

Point Of Sale - Picking Load

Configuration du type de préparation “Livraisons” pour rendre les livraisons disponibles dans le POS :

operation-types_deliveries.png

image-1622561369643.png

Sur la caisse sur laquelle on veut récupérer les bons de livraisons, on doit s’assurer que la configuration suivante est correcte :

image-1622561384550.png

Le nombre de bons de commandes à charger pourrait être augmenté.

Ouverture de la caisse 1 (la première partie a été faite sur la caisse 2 qui représente le comptoir fromage). La caisse 1 représente la caisse finale où le client vient payer.

Un bouton permet de charger les bons de livraisons :

image-1622561411877.png

Le panier est donc rempli avec le contenu du bon de livraison :

image-1622561437421.png

On peut ajouter d’autres articles au panier et finaliser la vente.

 

Dans le back-end, le bon de livraison passe au statut “Annulé”  étant donné que la livraison se fait via la vente en caisse.image-1622561456205.png

 

Contraintes et risques de ce worfklow

A la découpe fromage :

A la caisse

 

Afficher le fournisseur et le conditionnement d'un article sur le Point de Vente

Le module pos_products permet d'afficher le nom fournisseur de l'article disponible sur le PdV ainsi que son conditionnement (unité/poids) directement sur l'écran de caisse.

image-1616424727277.png

Ce module possède des dépendances sur les modules ; point_of_sale, beesdoo_product

 

Afficher une page d'accueil vide dans le POS

Prérequis : le module pos_empty_home doit être installé

Objectif : afficher une page d'accueil vide au début du point de vente, ou lorsqu’aucune recherche n'est effectuée et qu'aucune catégorie n'est sélectionnée.

pos_empty_home.png

Modifier le template de facture générées dans le POS

Prérequis : le module account_invoice_pos_already_paid doit être installé.

Objectif : ce module permet de définir un journal de facture ainsi qu'un template spécifique pour les factures du POS. 

Pour ce faire il faut créer un journal comptable dédié aux points de vente depuis lesquels on veut imprimer des factures qui ne contiennent pas la mention d'information de paiement.

Dans l'onglet Paramètres avancés, sous le titre "Options d'application Comptabilité", cocher l'option "Used For Pos Invoice".

10.png

Assigner ce journal aux points de vente concernés dans les options de configuration du point de vente.

11.png

Au niveau de la facture imprimée, ont été supprimé 

- La mention "merci d'utiliser la référence XXX pour payer"

- Les conditions de paiement

A la place, une mention “Cette facture a déjà été payée” a été ajoutée. 

Corriger les paiements erronés en fin de session

Un module de l'OCA, pos_payment_change, permet au caissier de corriger les erreurs d'encodages de paiements en fin de session. Ce tutoriel est librement inspiré du tutoriel OCA du module.

Les corrections doivent se faire avant la clôture de la session.

Configuration

Se rendre dans Point de Vente < Configuration < "Point de Vente". Choisir le point de vente concerné (il faut faire l'opération pour chaque point de vente).

Dans la zone "Méthode de changement de paiement", choisir une de ces 2 options :

image-1628251794704.png

Par simplicité, nous conseillons d'utiliser l'option "Modifier les paiements".

Certains pays interdisent cette option car l'historique de vente ne peut être altéré. Renseignez-vous.

Utilisation

Avant la clôture de la session, sélectionner la vente concernée par une erreur d'encodage de paiement en allant dans Commandes < "Commandes". Cliquer sur le bouton "Changer les paiements".

image-1628252138349.png

Dans la fenêtre qui s'ouvre en pop-up, sélectionner les paiements qui ont été utilisés en réalité dans la zone "New Payment Lines" :

image-1628252189420.png

Cliquer sur le bouton "Change Payment" pour finaliser l'opération.

 

 

Gérer la tare en caisse

Présentation

Le module pos_tare donne la possibilité à l'utilisateur de la caisse de saisir un poids de tare, lors de la pesée des produits dans le Point de Vente. Cela calculera automatiquement le poids net et le définira sur l'ordre sélectionné actuel.

https://raw.githubusercontent.com/OCA/pos/12.0/pos_tare/static/description/pos_tare.png

Le poids net est affiché dans l'ordre avec la valeur de tare marqué dessous.

https://raw.githubusercontent.com/OCA/pos/12.0/pos_tare/static/description/order.png

Prérequis

Pour générer un code-barres de tare, vous devez utiliser la nomenclature de code-barres par défaut. Le modèle de code-barres par défaut est 0700000 {NNDDD}. En utilisant ce modèle, le code-barres pour une tare de 0,1 kg est 0700000001006.

Configuration

Pour activer ce module, après l'avoir installé,

image-1616493892868.png

image-1616493978442.png

Utilisation pour scanner un code barre de tare

Ticket de caisse

Le ticket de caisse contient l'information du poids brut, net et de la tare.

Illustration :

image-1622730473988.png

 

Créer un compte générique de caisse qui peut créer des factures

Prérequis : le module pos_account_invoice_access_right doit être installé.

Ce module permet la création d'un compte générique de caisse avec des droits seulement liés au POS, mais qui peut quand même générer des factures depuis la caisse.

1$.png

Envoyer la facture par mail au client

Il faut que la possibilité d'émettre des factures depuis le point de vente soit configurée et que le module pos_invoice_send_mail soit installé.

Configurer la caisse

Il faut aller dans la configuration de la caisse et cocher la case à cocher "envoyer la facture par email". 1.png

Une fois cochée, il faut choisir le modèle d'email à utiliser.

2.png

Envoyer la facture

Lorsqu'une commande est passée en caisse, il faut cliquer sur "envoyer la facture par email", ce qui sélectionnera également l'option de la facture.

3.png

Une fois le paiement fait, cliquez sur valider et le mail sera envoyé.

Un-e client-e doit être obligatoirement défini.

Statistiques et rapports des sessions de vente [à compléter]

Les rapports de vente sont disponibles dans l'onglet Rapports de l'application Point de vente.

pos_stats.png

 

Le module pos_order_count_store stocke l'information du nombre total de ventes par client, et ajoute cette donnée aux vues tableaux croisés.

pos_order.png

 

Le module pos_report_session_summary_xls (seulement compatible avec la localisation française l10n-fr) permet d'exporter un rapport de session de vente correspondant au Z de caisse (ticket Z), sous format .xlsx.

Ce module n'est pas mature, vérifiez que les données exportées correspondent bien à vos obligations légales.

Pouvoir passer à la ligne dans le Footer du ticket de caisse

Fonctionalité disponible en v12

1. Installer pos_receipt_xml_header_footer

2. Dans Point de vente>Configuration>Point de vente>Caisse (choisir une caisse)>Factures et reçus>En-tête et pied de page. Modifier le pied de page en insérant :

<!DOCTYPE QWEB
contenuligne1 <br />
contenuligne1

En remplaçant contenuligne1 par  le texte que l'on veut afficher sur la première ligne, et contenuligne2 sur la 2e ligne. Attention, il est important qu'il y a un retour à la ligne juste après <!DOCTYPE QWEB`.

Le retour à la ligne entre contenuligne1 <br /> et  contenuligne1 n'est pas nécessaire d'un point de vue technique.

Gérer les problèmes de syncronisation du point de vente

Après le paiement d'une grosse commande dans le point de vente, il peut y avoir un long temps de synchronisation du point de vente qui peut mener à un blocage. L'icône "Wifi" en haut à droite de l'interface devient rouge.

image-1679044477065.png

En effet, lors de la validation d'un paiement dans le Point de vente, plusieurs écritures sont faites dans la base de données, notamment sur les lignes de bons de commande et les mouvements de stock. Si la liste de course est longue, cela peut prendre un certain temps (jusqu'à 8/9 secondes).

Si on rappuie sur le bouton rouge, la synchronisation se relance et en général aboutit. Mais c'est pénible de devoir rappuyer sur ce bouton à chaque course.

Une solution est d'augmenter le "timeout", c'est-à-dire le temps autorisé pour que la synchronisation avec la base de donnée se fasse. En effet le "timeout" par défaut est de 7.5 secondes, ce qui peut être trop peu pour une grosse commande.

Le module pos_timeout permets de faire cela. Après installation, il faut configurer sur chaque caisse le "timeout" souhaité.

La configuration d'une caisse se fait comme expliqué ci-dessous :

image-1679045034155.png

On peut ensuite aller modifier le "timeout" dans la section "Interface de commande" :

image-1679045138471.png

Un timeout de 10 ou 15 secondes est en général suffisant.

Editer le template du ticket de caisse

Le module pos_receipt_custom_template doit être installé.

Ce module permet de définir et d'éditer des templates différents pour les tickets de caisse à imprimer depuis le point de vente.

Pour y accéder, aller dans la configuration d'un point de vente et cocher "custom ticket".

1.png

Une liste déroulante apparait permettant d'avoir accès aux templates existants ou d'en créer de nouveaux.

3.png

2.png

 

Pourboire automatique pour l'arrondi solidaire

Pourboire dans Odoo Standard

Lorsqu'une caisse est configurée en Bar/Restaurant (dans Point de vente>Configuration>Point de vente), il est possible d'activer l'option "Pourboire".

image-1684935800915.png

image-1684935870077.png (pourboire étant "tips" en anglais, Odoo fait une mauvaise traduction: "conseil")

Ce système permet de définir un article qui sera ajouté à la liste des achats et dont le montant sera fixé au moment du paiement.
Cela permet de gérer manuellement, à la demande, un arrondi lors du passage à la caisse. Cet arrondi est comptabilisé dans un article.
Plusieurs cas d'utilisation :

Le montant du pourboire est alors donné comme prix d’achat de l’article "Pourboire".



Automatisation du pourboire

Le module pos_solidarity_rounding contient deux fonctionnalités:

Pour les clients ayant ce système activé, lors du passage à l’écran de paiement (ou lors du choix de ce client si ce n’était pas encore fait), l’arrondi est automatiquement appliqué sans action nécessaire du caissier.
Ce paramètre (case à cocher) est modifiable sur la fiche contact en back-end (dans l’onglet Ventes & Achats)
Et également directement par le coopérateur via l’accès portail, grâce au module pos_solidarity_rounding_portal

Carte Cadeaux dans point de vente et e-commerce

Pour distribuer des cartes cadeaux, il faut activer l'option Remises, Fidélité & Cartes-cadeaux dans Ventes > Configuration > Paramètres > Tarif.

Attention d'archiver les options crées dans le menu Remises et fidélités, car sinon cela va produire des comportements non voulus. Voir ci-dessous :

image.png

Le sous menu Carte cadeau sera créé dans le menu Point de vente > Produit. Une configuration par défaut de carte cadeau est crée, avec un produit associé. Par défaut, la carte cadeau est accessible depuis le point de vente, la vente en back office et le e-commerce. 

image.png

image.png

Carte cadeau dans le point de vente

La carte cadeau peut s'acheter dans le Point de Vente, cela va imprimer la carte cadeau, et le code associé. Il n'est pas nécéssaire de choisir un client, un client anonyme peut bénéficer de la carte cadeau tant qu'il dispose du code.

Il existe un écran pour surveiller les cartes-cadeaux créées et les soldes restants :

Pour bénéficier de la carte cadeau, le caissier doit scanner le code depuis l'écran de point de vente 

image.png

Carte cadeau dans le e-commerce

Le fonctionnement est similaire dans le webshop. Au moment du paiement, le client peut sélectionner un code cadeau

image.png

Après avoir rentrer son code, une ligne de remise va s'afficher

image.png

----------------------------

Pour information, la documentation officielle sur ce sujet est ici et une documentation complémentaire se trouve ici