Sommaire >> API LEO2Click - Récupération des données caisse

Informations générales

Les produits

Un produit peut être vendu soit à la carte, soit au sein d'un menu, soit les deux.

Les menus

Un menu correspond à une sélection de produits regroupés en une à plusieurs étapes dans lesquelles l'utilisateur fait une sélection. Cette fonction est dédiée aux magasin dans le secteur alimentaire & restauration. Dans le cas d'autres secteurs d'activité, on peux envisager que cette fonctionnalité serve pour la vente de groupement de produits.

Les familles

Les familles servent à catégoriser les produits. Un produit peux appartenir à plusieurs familles.

Les messages

Un message correspond à une option d'un produit. Pour un produit on pourra avoir un à plusieurs groupes de messages. Par exemple pour un produit "Plat du jour", on pourra avoir 2 groupes de messages: 1. Accompagnement: Frites / Riz / Légumes 2. Cuisson: Bleu / Saignant / A point.
Un message peut avoir un tarif et peux s'ajoute au montant du produit quand il est sélectionné. A noter qu'un message peux avoir un montant négatif, par exemple dans le cas où un produit à un taux de TVA différent de celui du menu parent, le message peux servir à ajuster le tarif (message de type automatique).
Sur les caisses Leo2, il y a 5 types de groupes messages possibles :

  • ID:0 Unique : X produits + 1 seul choix possible
  • ID:1 Multiple : X produits + X choix obligatoires
  • ID:2 Libre : X produits + Y choix possibles
  • ID:3 Automatique : X produits + X fois toutes la liste des choix possibles sans demander
  • ID:4 Proportionnel : X produits + 1 choix unique sera demandé en boucle X fois.
Si pour l'application client Clickandcollect, l'ajout d'un produit au panier se fait à l'unité, on peux simplifier à 3 type de messages :
  • Unique => Choix unique
  • Multiple => Choix unique
  • Libre => Choix multiple
  • Automatique => Choix unique automatique: obligatoirement ajouté au produit.
  • Proportionnel => Choix unique

Attributs communs à chaque flux

type (string)
Type de flux
view (string)
Identifiant de la vue
title (string)
Titre du flux
description (string)
Descriptif du flux
icon (string)
Icon
method (string)
Méthode pour générer le flux
gmtDate (string)
Date (GMT) de génération du flux
platform (string)
Plateforme
data (mixed)
Données du flux

Liste des méthodes


atoo_shop

Package des données de la boutique

Retourne les différents dataset des menu, produits, ...

Leo2click - Package des données de la boutique
Ce fichier contient toutes les informations de la boutiques, les différents listings (produits, menus, familles) et la liste des textes d'informations
data (object)
Données du flux
auth (object)
Utilisateur authentifié
Informations sur l'utilisateur authentifié
shop (object)
Informations sur la boutique
Affiche les principales informations sur la boutique courante
Retourne le contenu de l'attribut 'data' du flux shop-atoo_shop_parameters
cart (object)
Identifiant du panier en cours
Affiche le panier en cours pour l'utilisateur courant. Information uniquement pour le clickncollect natif (ne sert pas pour les solutions externes).
families (array)
Listing familles de produits
Liste des familles de produits sur la boutique.
Retourne le contenu de l'attribut 'data' du flux shop-atoo_shop_families
menus (array)
Listing menus
Liste des menus disponibles sur la boutique.
Retourne le contenu de l'attribut 'data' du flux shop_menu-atoo_shop_menu
products (array)
Listing produits
Liste des produits actif sur la boutique
Retourne le contenu de l'attribut 'data' du flux shop_product-atoo_shop_product
messages (array)
Listing messages
Listing des messages des produits
Retourne le contenu de l'attribut 'data' du flux shop_product-atoo_shop_message

Informations complètes de la boutique

Retourne les informations sur l'adresse, les informations de contact, les styles, les pages de contenus

Informations générales du magasin
data (object)
Propriétés du magasin
name (string)
Nom du magasin
logo (string)
logo du magasin, nom de l'image uniquement
media (object)
URL du logo du magasin
Liste des URL du logo en plusieurs tailles.
small (string)
URL petit format
big (string)
URL grand format
styles (object)
Couleurs pour l'interface du click and collect (notation hexadécimale)
main_backcolor (string)
Couleur de fond principale
main_textcolor (string)
Couleur de texte principale
address (object)
Adresse du magasin
name (string)
Nom du magasin
addr (string)
Adresse
cp (string)
Code postal
city (string)
Ville
country (string)
Pays
contact (object)
Informations de contact
email (string)
Adresse email de contact
phone (string)
Numéro de téléphone de contact
welcome_title (string)
Titre d'accueil du magasin
welcome_intro (string)
Texte d'introduction
Message d'introduction du magasin au format HTML
pages (array)
Pages d'information
Liste des pages d'information du magasin. Exemple: mentions légales, CGV, ...
Pour récuperer le texte complet d'une page, il faut faire une requête sur l'API shop-atoo_shop_page
Tableau d'objets
(object)
Liste d'objets de type Page
id (integer)
Identifiant unique de la page
title (string)
Titre de la page

Liste des produits

  • ID
    shop_product-atoo_shop_product
  • Type de données
    shop_product
  • shop (int)
    Identifiant magasin
  • (optionnal_parameter)
    • id_product (int)
      Identifiant produit (si besoin de récupérer uniquement un produit)
    • id_familly (int)
      Identifiant famille
    • only_in_stock (boolean)
      Affiche uniquement les produits en stock si vrai
    • min_date_update (int)
      Affiche tous ce qui a été mis à jour depuis un timestamp
    • ean_list (date)
      Filtrage EAN - code barre (séparateur virgule)
  • Requête
    /api.php?module=atoo_shop&type=shop_product&method=atoo_shop_product
Liste des produits
Liste les différents produits disponibles pour la boutique.
type (string)
Type de flux
view (string)
Identifiant de la vue
title (string)
Titre du flux
description (string)
Descriptif du flux
icon (string)
Icon
method (string)
Méthode pour générer le flux
gmtDate (string)
Date (GMT) de génération du flux
platform (string)
Plateforme
filters (null)
Filtres
data (array)
Tableau d'objets de type Produit
Tableau d'objets
(object)
Produit
Représente un objet de type Produit
id (integer)
Identifiant unique du produit dans le magasin courant
Dans le cas du multi-magasin, les produits sont dédoublés: l'identifiant peux être identique entre 2 magasins (mais pas forcément) mais les stocks seront propres à chacun. En général quand un nouveau magasin d'une franchise est créé, les produits sont copiés d'un magasin existant, par contre si ce n'est pas le cas un produit identique pourra se retrouver dans 2 magasins différent avec 2 ID différents.
name (string)
Titre du produit
Titre du produit dans le magasin courant.
barcode (string)
Code barre principal
Utilisé pour stocker le code barre principal du produit ou selon les cas le code EAN
price_ttc (integer)
Tarif TTC du produit
with_options (boolean)
Avec options (messages)
Spécifie si le produits possède des options (nommé 'message' sur la caisse). Les options sont des éléménts à selectionner au choix d'un produit.
Par exemple dans le cas d'une viande, en option on aura au choix une cuisson.
Autre exemple, pour un wok on aura une liste d'ingrédients à choisir.
idFamily (array)
Famille(s) du produit
Liste les identifiants des familles auquel le produit appartient. Cette liste est un tableau d'identifiants numériques. Les familles permettent de classer les produits qui sont en vente à la carte (hors menu).
Dans le contexte des solutions e-commerce standard, une famille correspond à une catégorie.
idParent (array)
Produit(s) parent(s)
Liste les produits parents du produit courant. De manière générale l'identifiant d'un produit parent correspond à un identifiant de menu (dans les données des caisses un menu est systématiquement associé à un produit).
Un produit peux ne pas avoir de produit parent dans le cas où il est vendu uniquement à la carte.
Tableau d'objets
(object)
Informations complémentaires du produits par rapport au parent
id (integer)
Identifiant du menu parent
depth (integer)
Étape de la sélection
Étape à laquelle le produit sera affiché lors des différentes étape de choix pour un menu.
Par exemple, si le produit est un gateau, on indiquera le numéro de l'étape correspondant au choix du dessert ('3' par exemple).
order (integer)
Ordre
Ordre du produit parmis tous les produits de la même étape de sélection'
add_price_menu (integer)
Montant HT ajouté au montant du produit parent.
Quand on affiche un produit au sein d'un menu, on n'utilisera pas le champ 'price_ttc' car le produit sera au sein d'une offre groupée (le menu). C'est ce champ qui permet de savoir si le produit, lorsqu'il est choisi, ajoutera un montant au prix du menu. Dans la plupart des cas il sera égal à zéro (tarif compris dans le menu).
stock (integer)
Quantitée en stock
Stock du produit pour le magasin courant.
sel_max (integer)
media (array)
Liste des images
Liste les URLs des différentes images associées au produit. Chaque image est disponible dans 2 tailles. Pour des soucis de performances merci de créer des copies en cache côté client.
Tableau d'objets
(object)
Liste des différentes tailles
small (string)
URL Petit format
big (string)
URL Grand format
in_mnu_only (boolean)
Uniquement disponible dans les menus
Si vrai, le produits ne peux être commandé que dans le as où il a été choisi au sein d'un menu (non disponible à la vente seul).

Stock produits

  • ID
    shop_product-atoo_shop_product_stock
  • Type de données
    shop_product
  • shop (int)
    Identifiant magasin
  • (optionnal_parameter)
    • id_product (int)
      Identifiant produit (si besoin de récupérer uniquement un produit)
    • id_familly (int)
      Identifiant famille
    • only_in_stock (boolean)
      Affiche uniquement les produits en stock
    • min_date_update (int)
      Affiche tous ce qui a été mis à jour depuis un timestamp
    • ean_list (string)
      Filtrage EAN - code barre (séparateur virgule, max 50)
  • Requête
    /api.php?module=atoo_shop&type=shop_product&method=atoo_shop_product_stock
Stock produits
data (array)
Tableau d'objets
(object)
id (integer)
barcode (string)
stock (integer)
stock_day (NULL)
type (string)
Type de flux
view (string)
Identifiant de la vue
title (string)
Titre du flux
owner (string,null)
Propriétaire
description (string)
Description du flux
icon (string,null)
Icon
method (string)
Méthode pour générer le flux
gmtDate (string)
Date de génération du flux
platform (string)
Plateforme
filters (string,null)
Filtres utilisés

Liste des menus

Liste des menus
Liste les différents menus disponibles pour la boutique.
data (array)
Tableau d'objets de type Menu
Tableau d'objets
(object)
Menu
Représente un objet de type menu
id (integer)
Identifiant unique du menu dans le magasin courant
name (string)
Titre du menu
price_ttc (float)
Tarif TTC
step_level1 (object)
Étapes de selections
Liste les titres des différentes étapes de sélection des éléménts du menu. Le nombre d'étapes est variable, en général entre 1 et 3 étapes
(exemple: 1. entrée - 2. plat - 3. dessert)
1 (string)
Titre de l'étape 1
2 (string)
Titre de l'étape 2 (optionnel)
3 (string)
Titre de l'étape 3 (optionnel)
media (array)
Liste des images
Liste les URLs des différentes images associées au menu. Chaque image est disponible dans 2 tailles. Pour des soucis de performances merci de créer des copies en cache côté client.
Tableau d'objets
(object)
Liste des différentes tailles
small (string)
URL Petit format
big (string)
URL Grand format
stock (integer)
Quantité en stock

Listing familles

Liste des familles de produits
data (array)
Tableau d'objets de type Famille
Tableau d'objets
(object)
Objet de type famille
L'appellation 'famille' correspond à une catégorie
id (integer)
Identifiant unique de la famille
name (string)
Titre de la famille
desc (null)
Texte descriptif (null si non défini)
media (array)
Liste des images
Liste les URLs des différentes images attachées à la famille. Chaque image est disponible dans 2 tailles. Pour des soucis de performances merci de créer des copies en cache côté client.
Tableau d'objets
(object)
Liste des différentes tailles
small (string)
URL petit format
big (string)
URL grand format

Liste des messages

Liste des messages
data (array)
Tableau d'objets de type message
Tableau d'objets
(object)
Objet de type message
id (integer)
Identifiant du groupe de messages
type (object)
Type du groupe de messages
Chaque groupe de message à un type qui défini comment doit se faie la selection des message lors de l'ajout au panier du produit associé.
id (integer)
Identifiant numérique du type (valeur de 0 à 4)
text (string)
Identifiant textuel du type
La liste de différents types et leur comportements sont spécifiés au début de la documentation
libelle (string)
Titre du groupe d'options
Exemples: cuisson, accompagnement, ...
parentProduct (array)
Identifiants des produits qui utilisent le groupe d'options
listOptions (object)
Listes d'objets de type messages appartenant au groupe
Message (object)
Objet de type message
id (integer)
Identifiant unique du message
m (string)
Titre du message
add_price (integer)
Montant TTC
Montant ajouté au produit si sélectionné

Horaires de retrait

Liste des horaires de retrait
data (array)
Listing des dates de retrait disponibles
Liste les prochaines dates (Objets) disponible pour le retrait click and collect
Tableau d'objets
(object)
Objet de type date
date (string)
Date de retrait
Date au format SQL
h (array)
Créneaux horaires
Liste les différents créneaux horaires pour la date
Tableau d'objets
(object)
Un créneau horaire
h (string)
Heure de début créneau
Format Heures:Minutes
d (integer)
Durée du crénaux horaire
Durée en minutes du créneaux horaire depuis l'heure de début. Permet de calculer l'heure de fin du créneau.
full (boolean)
Indique si le crénaux est plein
Permet de vérifier lors du début de commande et lors de la validation de la commande si le créneau est disponible ou non.
dateLocalePretty (string)
Date formaté dans la langue locale

Retourne le contenu d'une page

C.G.V., mentions légales, ... Nécéssite l'id de page en paramètres ("page")


Envoi commande

Envoi commande
data (object)
is_valid (boolean)
message (NULL)
internalID (integer)
externalID (integer)
table (integer)
type (string)
Type de flux
view (string)
Identifiant de la vue
title (string)
Titre du flux
owner (string,null)
Propriétaire
description (string)
Description du flux
icon (string,null)
Icon
method (string)
Méthode pour générer le flux
gmtDate (string)
Date de génération du flux
platform (string)
Plateforme
filters (string,null)
Filtres utilisés

Statuts des commandes (envoyées en caisse uniquement)


Statuts des commandes (toutes)


Envoi produits sur table


manifest.json

Création dynamique du "manifest" pour les applications mobile liées à un magasin. (Un manifeste d'application est un document [ JSON ] qui contient les paramètres de démarrage et les valeurs par défaut de l'application lors du lancement d'une application web.)


atoo_shop_pay





Ce site est édité par la société Leo2Web.