Fraud Blocker

Guide du développeur

Pour commencer

L'intégration de votre point de vente, de votre système de commande en ligne ou de votre plateforme d'agrégation de commandes dans Fresh KDS est rapide et facile grâce à nos API, nos événements webhook et options d'intégration sur site. L'épine dorsale de l'intégration, à savoir l'envoi de commandes aux écrans KDS, ne nécessite que quelques appels d'API. Nombre de nos partenaires ont a trouvé le succès en s'appuyant sur la logique d'imprimante existante pour développer une intégration robuste en quelques semaines.

Pour commencer, contactez-nous.

Terminologie

L'API Fresh KDS utilise quatre concepts clés :

  • Jetons - Chaque intégration nécessite un jeton, que Fresh KDS fournit. C'est la clé du système. Ce jeton contrôle les ressources auxquelles vous pouvez accéder pour une marque donnée. Chaque marque aura besoin d'un jeton distinct.
  • Marques - Une marque est une collection d'un ou de plusieurs emplacements d'un restaurant. Selon la hiérarchie de votre système, une marque Fresh KDS peut être l'équivalent d'un commerçant ou d'une entreprise. Les jetons sont générés au niveau de la marque.
  • Localisations - Un emplacement représente l'emplacement physique individuel d'une cuisine. D'une manière générale, un food truck serait un endroit unique, même s'il se gare à différents endroits pour vendre. Les sites ont des abonnements qui les autorisent à enregistrer un certain nombre d'écrans KDS.
  • Appareils - Également connu sous le nom d'écrans KDS, un appareil est l'élément matériel qui reçoit et affiche les commandes. Il peut s'agir d'un iPad, d'une tablette Android ou d'un boîtier Android sans tête connecté à un moniteur. Un nom sera attribué à chaque appareil, qui décrit généralement son emplacement dans le restaurant, par exemple Grill ou Salad.

Authentification

Les jetons au niveau de la marque sont la clé du système Fresh KDS. Vous devrez générer un jeton distinct pour chaque marque à laquelle votre système envoie des commandes.

N'incluez ces jetons dans aucun code. Ils doivent être gérés comme des secrets, par exemple en étant extraits de variables environnementales ou de magasins de paramètres. Si votre intégration doit être utilisée par plusieurs clients, vous devrez implémenter une gestion des jetons pour associer chaque jeton à la marque Fresh KDS correspondante.

Un jeton valide est requis pour chaque demande adressée à l'API Fresh KDS. Il sera inclus dans l'en-tête de la demande :

jeton d'intégration X : {jeton}

Obtenir des informations sur la marque

Une fois que vous aurez obtenu votre jeton d'intégration au niveau de la marque, vous pourrez faire des demandes pour obtenir des informations supplémentaires sur la configuration de chaque marque. Ces informations vont des informations de base telles que le nom et l'adresse de l'emplacement aux informations d'identification concernant un appareil individuel à un endroit.

Vous pouvez utiliser ces informations comme méthode unique pour initialiser une configuration pour votre intégration. Vous pouvez également l'utiliser de manière continue pour interroger la nature changeante de la configuration Fresh KDS d'une marque. L'emplacement et les identifiants des appareils sont essentiels au processus d'intégration.

Pour obtenir des informations sur un lieu via l'API, celui-ci doit disposer d'un abonnement Fresh KDS actif.

Vous pouvez accéder à des informations détaillées sur une marque avec une seule demande:

GET /integrators/kds-information

Il existe également des points de terminaison qui vous permettent de demander une liste de lieux:

GET /integrators/kds-information/locations

Et vous pouvez approfondir votre recherche pour obtenir des informations sur appareils pour un emplacement spécifique:

GET /integrators/kds-information/locations/ {locationID} /devices

Commandes

Envoyer une commande

ILes intégrateurs envoient des commandes aux écrans Fresh KDS via l'API des millions de fois par jour. Nous avons travaillé d'arrache-pied pour rendre cette partie essentielle du processus aussi simple et facile que possible. Avant d'envoyer une commande, vous devez vous assurer que vous avez jeton d'authentification et le emplacement et identifiant (s) de l'appareil pour la commande. Il suffit une seule demande pour envoyer une commande sur un écran KDS :

POST /intégrateurs/kds-orders

Bien qu'il ne faille qu'une seule demande pour envoyer une commande, certains paramètres et options méritent une explication plus approfondie. Tout d'abord, vous utiliserez des en-têtes dans votre demande pour indiquer quel endroit et quel (s) appareil (s) doivent recevoir cette commande. Vous avez la possibilité de spécifier une liste d'identifiants d'appareils ou de transmettre « tout » pour envoyer les données de la commande à chaque écran actif du site.

Définissez ensuite une valeur unique pour la propriété id. Cet identifiant permettra d'identifier le « bloc » qui apparaît sur l'écran KDS. Si vous redirigez le même « bloc » vers plusieurs écrans, vous utiliserez le même identifiant pour chaque demande. Toutefois, si une commande comporte plusieurs « blocs », par exemple un plat d'entrée et un plat principal faisant partie de la même commande POS mais devant être préparés séparément, vous devrez utiliser une propriété d'identification distincte pour chaque plat.

Enfin, vous devrez inclure les éléments de menu de la commande. Chaque demande comprendra un éventail d'articles. Vous pouvez fournir des détails sur un article, notamment les modificateurs, les instructions spéciales, la quantité, etc. Chaque article doit avoir une valeur unique ID de ligne afin que vous puissiez mettre à jour l'article ultérieurement si nécessaire.

Il suffit d'envoyer cette demande unique avec les détails de la commande et les articles de la commande à un appareil Fresh KDS pour que la commande apparaisse au poste approprié de la cuisine.

Mettre à jour une commande

Il n'est pas rare que les clients changent d'avis après avoir déjà commandé. Heureusement, si votre système de commande permet de modifier les commandes existantes, vous pouvez communiquer ces mises à jour à la cuisine en temps réel en utilisant l'itinéraire des commandes de mise à jour de Fresh KDS. De cette façon, la cuisine utilise toujours les informations les plus récentes.

Pour mettre à jour une commande, vous devez connaître les identifiant utilisé dans la demande de création de commande d'origine. Cette valeur aurait été renvoyée dans la réponse de réussite de l'API. Vous aurez également besoin de connaître les valeurs « LineID » utilisées dans la demande d'origine.

Vous pouvez également vérifier si la commande est toujours active sur les écrans KDS à l'aide du demande de commande active:

GET /integrators/kds-orders/active

Une fois que vous avez confirmé que la commande est toujours active, vous pouvez effectuer demande de mise à jour de commande:

PUT /intégrateurs/kds-orders

Lorsque vous faites cette demande, vous devez inclure tous les articles, les quantités, les instructions spéciales et les autres détails de la commande initiale. Par exemple, si la commande d'origine contenait deux éléments de menu et que vous en ajoutez un troisième, la demande PUT doit inclure un total de trois éléments dans le tableau d'éléments, les deux premiers avec leur élément d'origine. ID de ligne valeurs et la troisième avec un nouveau LineID. Pour mettre à jour un élément de menu ou ses modificateurs, incluez simplement le LineID d'origine et remplacez le contenu par les nouvelles informations.

En plus d'ajouter, de supprimer et de modifier des éléments de menu, vous pouvez utiliser l'itinéraire de mise à jour des commandes pour modifier le type d'une commande (c'est-à-dire changer For Here to Go), l'heure de prise en charge ou toute autre propriété.

L'envoi et la mise à jour des commandes sont les deux étapes les plus élémentaires et les plus importantes de la mise en place de votre intégration avec Fresh KDS. Cependant, Fresh KDS offre bien plus encore, notamment la messagerie client, la communication entre écrans et des fonctionnalités en bordure de rue. Consultez les solutions section ci-dessous pour plus de détails sur la manière dont vous pouvez activer ces puissantes fonctionnalités pour vos clients en les intégrant à Fresh KDS.

Des solutions

Routage

Fresh KDS ne prend pas en charge nativement le routage au niveau des catégories ou des articles. Fresh KDS prend en charge le routage des types de commandes, ce qui signifie que chaque écran KDS peut activer ou désactiver les types de commandes qui doivent être affichés. Cela permet aux intégrateurs d'envoyer des commandes de tous types sur tous les écrans et permet aux sites de configurer les types de commandes qui doivent apparaître.

Le routage au niveau des catégories ou des articles peut être intégré du côté de l'intégrateur ; nombre de nos partenaires y sont parvenus avec succès en s'appuyant sur leur logique d'imprimante existante. Alors que envoyer l'itinéraire de la commande vous permet d'envoyer une commande à plusieurs écrans en un seul appel d'API, cela ne s'applique que si les articles envoyés à chaque écran sont identiques. Si vous acheminez des articles d'une seule commande vers différents écrans, vous devrez effectuer un appel d'API pour chaque combinaison d'articles. Pour chacun de ces appels d'API, vous souhaiterez utiliser le même identifiant Fresh KDS est donc capable d'identifier quels « blocs » de chaque écran sont associés les uns aux autres.

Messagerie

Fresh KDS a la capacité d'envoyer aux clients des messages contenant des informations sur leur commande. Ce fonctionnalité premium est disponible aux États-Unis et au Canada par messagerie SMS. Il existe trois déclencheurs de messagerie facultatifs :

  • Lorsque les commandes sont reçues sur un écran
  • Lorsque les commandes sont annulées ou effacées à partir d'un écran
  • Lorsque les commandes sont marquées comme « prêtes » dans la vue des plats à emporter

Du point de vue de l'intégrateur, la seule chose nécessaire pour activer cette fonctionnalité est de définir Numéro de téléphone et Optez pour les SMS propriétés lorsque envoi d'une commande. Le Numéro de téléphone doit être envoyé Format E.164. Si vos clients ont choisi de recevoir des SMS, définissez Optez pour les SMS sur true, sinon définissez-le sur false. Si Optez pour les SMS est faux Fresh KDS n'enverra pas de messages aux clients, même si les écrans sont configurés pour le faire.

Communication entre écrans

Il existe deux types de communication entre écrans dans Fresh KDS : multi-clair et envoyer à l'écran suivant. Les deux types sont faciles à activer via l'API ou l'intégration sur site.

Multi-clair la communication entre écrans synchronise les idées et les commandes entre plusieurs écrans. Pour que cette fonctionnalité fonctionne correctement, les écrans doivent être en mesure d'identifier quels « blocs » et quels éléments de ces blocs sont identiques. Cela se fait en réglant le même identifiant propriété lors du routage des « blocs » d'ordre vers différents écrans. Les éléments sont mis en correspondance par le nom des éléments de menu et des modificateurs.

Supposons, par exemple, que vous ayez une commande contenant un hamburger et une salade. Vous effectuez trois appels d'API pour envoyer le hamburger à la station de grillades, la salade à la station de salade et les deux articles à la station d'exposition. À chaque appel, vous définissez l'identifiant sur 12345. Cela permettra à Fresh KDS d'identifier le bloc de commande comme étant le même sur les trois écrans. Si la station d'exposition est configurée pour accéder à la station de grillades et à salades, lorsque l'utilisateur efface la commande depuis l'expo, elle passe également depuis les stations de grillades et de salades.

Le envoyer à l'écran suivant L'option peut être utile dans les cuisines équipées d'un modèle de chaîne de montage - par exemple, une pizzeria où la première station prépare la pizza et la deuxième station la fait cuire. L'écran KDS de la deuxième station n'a pas besoin d'être au courant de la commande tant que la pizza n'est pas préparée et distribuée depuis la première station. En tant qu'intégrateur, il vous suffit d'envoyer la commande uniquement à l'écran KDS de la première station, puis de laisser Fresh KDS s'occuper du reste.

En bordure de rue

Fresh KDS inclut un certain nombre de fonctionnalités pour aider les restaurants à rationaliser le ramassage en bordure de rue. Toutes ces fonctionnalités sont mises à la disposition des intégrateurs via l'API.

La première chose à faire pour les commandes en bordure de rue est de définir le mode propriété à CurbSide lorsque envoi de la commande à Fresh KDS. Vous souhaiterez également inclure le Modèle de véhicule et Couleur du véhicule propriétés. Ces valeurs seront affichées sur l'écran des plats à emporter de Fresh KDS pour aider le restaurant à identifier la voiture du client à son arrivée.

Ensuite, vous devez configurer les notifications d'arrivée. Il existe deux méthodes pour ce faire : vous pouvez soit fournir une URL d'arrivée lors de l'envoi de la commande, soit autoriser Fresh KDS à générer l'URL. Nous aborderons les deux méthodes ci-dessous.

L'intégrateur fournit l'URL d'arrivée

Si la logique d'arrivée des clients est déjà intégrée à votre plateforme, vous pouvez simplement fournir le URL d'arrivée du client valeur lors de l'envoi de la commande aux écrans KDS. Fresh KDS ajoutera cette URL aux messages clients relatifs à la commande reçue et à la commande prête à l'emploi. Remarque : La messagerie client est une fonctionnalité premium et l'écran KDS recevant la commande doit être configuré pour envoyer des messages. Vous pouvez activer cette fonctionnalité sans utiliser la messagerie Fresh KDS si vous fournissez l'URL directement à votre client.

Une fois que le client a cliqué sur le lien contenu dans le message, vous devez gérer l'événement et envoyer une demande au point d'arrivée du client:

POST /integrators/kds-notifications/customer-arrived

Dans la vue à emporter de l'écran KDS, cette notification déplace la commande en haut de la file d'attente et fait clignoter l'icône d'arrivée. Pour que Fresh KDS applique la notification à la bonne commande, vous devez inclure la même identifiant utilisé lors de la création de la commande.

Fresh KDS fournit l'URL d'arrivée

L'autre méthode pour activer les notifications en bordure de rue consiste pour Fresh KDS à générer l'URL d'arrivée, à ajouter cette URL au message du client, puis à gérer l'événement lorsque le client clique sur le lien. L'utilisation de cette méthode ne nécessite aucune information supplémentaire de la part de l'intégrateur, mais nécessite l'emplacement KDS pour utiliser la fonction de messagerie premium. Dans la configuration de la messagerie, l'emplacement peut activer « Envoyer le lien Je suis ici », ce qui ajoutera automatiquement l'URL d'arrivée du client au message.

Options autres que l'envoi de SMS

Le point d'arrivée du client fonctionnera pour n'importe quelle commande, même si aucune URL n'est fournie ou générée. Cela signifie que vous pouvez créer une intégration qui ne nécessite pas d'interaction avec le client pour déclencher la notification d'arrivée. Par exemple, si votre plateforme dispose de fonctionnalités de suivi GPS, vous pouvez les utiliser pour envoyer la notification d'arrivée lorsque le client se trouve à proximité du restaurant. Vous pouvez également utiliser point final de l'heure d'arrivée estimée pour envoyer des mises à jour en temps réel indiquant à quel moment le client doit s'attendre :

POST /integrators/kds-notifications/estimated-arrival-update

L'heure d'arrivée estimée, en minutes, s'affichera sur la commande dans la vue à emporter de l'écran KDS.

Livraison par un tiers

Fresh KDS inclut quelques options liées aux commandes de livraison effectuées par des tiers. Le premier est le Source d'origine propriété quand envoi d'une commande. Les valeurs acceptées sont DOORDASH, UBEREATS et GRUBHUB. Si elle est fournie, cette valeur sera affichée sur la commande dans la vue KDS afin que la cuisine sache de quel service de livraison provient la commande.

La deuxième option consiste à passer le Service de livraison objet qui inclut des propriétés pour le nom du service de livraison, le numéro de commande et le numéro de téléphone du chauffeur. Ces valeurs seront affichées par ordre dans la vue des sorties.

Webhooks

Fresh KDS inclut des webhooks pour les événements courants qui se produisent dans le système KDS. Ces événements en temps réel permettent aux intégrateurs de recevoir des informations sur le système KDS au fur et à mesure. Les webhooks sont configurés au niveau de la marque sur le portail Web Fresh KDS.

Appareils

  • Appareil créé : le webhook est déclenché chaque fois qu'un nouvel écran KDS est enregistré

  • Appareil mis à jour : le webhook est déclenché chaque fois que des informations concernant l'écran KDS sont modifiées

  • Appareil supprimé : le webhook est déclenché chaque fois qu'un écran KDS est supprimé

Commandes

  • Commande KDS créée - le webhook est déclenché chaque fois qu'une nouvelle commande est créée et inclut des informations sur la commande et l'article ; ce webhook peut être déclenché plusieurs fois si la commande est envoyée à différents écrans, vous devez donc être prêt à filtrer sur identifiant valeur
  • KDS Order Bumped : le webhook est déclenché chaque fois qu'une commande est effacée d'un écran KDS et inclut des informations sur la commande et l'article

Cas d'utilisation

Voici quelques exemples de la manière dont nos partenaires ont tiré parti des webhooks :

  • Déclenchement d'un signal d'impression pour une marque d'imprimante qui n'est actuellement pas prise en charge nativement par Fresh KDS
  • Transférer les données relatives aux commandes en temps réel vers un outil de BI ou un entrepôt de données à des fins de reporting
  • Mise à jour du statut des commandes dans le point de vente pour que les serveurs et les caissiers puissent les consulter

Intégration dans le cloud ou sur site

En plus des API cloud, il est possible d'envoyer des commandes aux écrans Fresh KDS via le réseau local d'un restaurant. Cela permet aux intégrateurs de développer une intégration capable de fonctionner en mode « hors ligne » sans connexion Internet. Consultez les Référence technique sur l'intégration sur site pour plus de détails.

Plusieurs facteurs doivent être pris en compte pour décider de la manière d'intégrer Fresh KDS :

  • Fonctionnalités hors ligne - Quelle est l'importance de la capacité à opérer hors ligne pour vos clients ? Les systèmes de présentoirs de cuisine sont un élément essentiel des opérations des restaurants et il est donc très important de minimiser les temps d'arrêt. Toutefois, si vos restaurants disposent de solutions de sauvegarde fiables sur Internet et présentent un faible risque de perte de service Internet, les fonctionnalités hors ligne peuvent être moins importantes.
  • Effort d'ingénierie - Bien que les deux types d'intégration soient simples, l'expérience de votre équipe d'ingénieurs peut rendre une option plus facile que l'autre. Par exemple, si votre équipe est familiarisée avec les intégrations de diffusion TCP/UDP en travaillant avec des imprimantes, une intégration sur site peut être plus simple à mettre en œuvre. Si votre équipe connaît mieux les API REST, la route vers le cloud pourrait être une meilleure option.
  • Réessayez la logique - L'un des avantages de l'approche API cloud est que Fresh KDS gère la logique des nouvelles tentatives en ce qui concerne la délivrabilité des commandes sur les écrans. Cela simplifie un peu l'intégration du point de vue de l'intégrateur. Avec l'intégration sur site, vous devrez gérer la logique de nouvelle tentative nécessaire pour vous assurer que toutes les commandes sont affichées à l'écran.
  • Fonctionnalité -  il existe actuellement quelques itinéraires qui n'existent que dans les API cloud. Il s'agit de l'itinéraire de la commande de mise à jour, de l'itinéraire d'arrivée du client et de l'itinéraire de mise à jour de l'arrivée estimée. Si vous envisagez d'utiliser ces itinéraires, vous devrez le faire via les API cloud.

Puis-je utiliser les deux ?

Vous devrez choisir une méthode pour envoyer les commandes sur les écrans KDS, soit via une API cloud, soit sur site. Toutefois, si vous choisissez d'envoyer des commandes sur les écrans via le réseau local, vous pouvez ensuite les augmenter avec les itinéraires de l'API cloud, à condition que vous utilisiez les mêmes itinéraires. `id` propriété permettant d'identifier correctement la commande.

Référence technique

API cloud
Intégration sur site

Devenez un partenaire avec nous

En savoir plus sur la création d'une intégration avec Fresh KDS.

Intégration simple à l'API

Expertise en restauration/cuisine

Partenariat utile et solidaire

Documentation de l'API