Notes techniques

Le module Click & Collect s'appuie sur TakePOS et en détourne certains aspects pour fonctionner.

Champs utilisés dans TakePOS

  • takeposterminal : stocké en base de données dans le champ pos_source (varchar) de la table llx_factures. Malheureusement, dans mod_takepos_ref_simple, une comparaison arithmétique est effectuée, ce qui impose d'utiliser un nombre. Le numéro de code 999 a donc été choisi arbitrairement (un code texte comme CNC pour "ClickNCollect" aurait été préférable).
  • place : utilisé par TakePOS pour savoir à quelle table est liée la facture en cours.
  • placeid : utilisé par TakePOS pour stocker l'identifiant de la facture.

Flux de facturation

Idéalement, TakePOS devrait générer des commandes et passer en facturation au moment du paiement, mais ce n'est pas le cas. Pour s'adapter à ce fonctionnement, Click & Collect procède ainsi :

  1. Une facture temporaire est créée.
  2. Cette facture est transformée en commande avant le paiement.
  3. Au retour du paiement, si celui-ci est validé, la facture définitive est générée automatiquement à partir de la commande.

Ce mécanisme évite d'avoir des factures impayées en cas d'échecs de paiements en ligne. En contrepartie, il crée des commandes validées dans le système.