Caisse. Enregistreuse

Logiciel de caisse enregistreuse gratuit, en ligne depuis 2014.

Follow Us

Centre d'aide caisse enregistreuse

This help will guide you through the setup and usage of our point of sale cash register software.

Rechercher par mot clé dans l'aide :

Modifier une vente enregistrée dans le logiciel

Vous pouvez modifier une commande tant qu'elle n'est pas validée.

Une fois validée, il est uniquement possible d'enregistrer le ou les paiements de la commande via le champ "payment".

POST /workers/editOrder.php

Envoyez une commande complète : articles, client, mode de paiement, livraison, etc.

Paramètres POST

NomeTypeNecessárioDescrição
shopIDstringsimVotre identifiant de boutique (SHOPID)
keystringsimVotre Token (APIKEY)
orderIDintsimL'identifiant de la commande à modifier
idUserintNãoIdentifiant d'utilisateur. Si non précisé, le logiciel crée un compte utilisateur avec le login "webservice" s'il n'existe pas déjà, et l'utilise.
paymentintsim-2 = Non payée, non validée ; -1 = Non payée, validée ; un identifiant de mode de paiement pour indiquer un paiement (peut être un identifiant d'un mode de remboursement)
paymentAmountintNãoLe montant payé, si "payment" indique un mode de paiement (si absent, le paiement est considéré comptant)
idClientintNãoIdentifiant du client existant pour l'affecter à la commande
clientarrayNãoCompte client à créer pour l'affecter à la commande*
idtableintNãoIdentifiant de la table pour l'affecter à la commande
idcaisseintNãoIdentifiant de la caisse pour l'affecter à la commande
numcouvertsintNãoNombre de couverts servis à la table
publicCommentstringNãoCommentaire adossé à la commande (public)
privateCommentstringNãoCommentaire adossé à la commande (privé)
pagerNumintNãoNuméro de bippeur
deliveryMethodintNãoMéthode de livraison*
itemsListarraysimNuméro de bippeur

Informations complémentaires

Créer un nouveau client dans la même requête

Si le client n'existe pas, vous pouvez le créer avec les champs suivants (à envoyer directement en POST) :

client[nom]=[nom]client[prenom]=[Prénom]client[email]=[Email]client[telephone]=[nom]client[adresseligne1]=[Adresse ligne 1]client[adresseligne2]=[Adresse ligne 2]client[commentaireadresse]=[nom]client[codepostal]=[Code postal]client[ville]=[Ville]client[pays]=FRclient[numtva]=[Numéro TVA]client[rcs]=[Numéro RC]client[codeBarre]=[Code barre]client[telephone2]=[Téléphone secondaire]client[lat]=[latitude]client[lng]=[longitude]

Méthode de livraison

Le champ deliveryMethod peut avoir des valeurs allant de 0 à 6 :

QuantidadeSignification
0À emporter
1À livrer
2Sur place
3Service au volant
4Vente au comptoir
5Point relai
6À expédier

itemsList[] — Structure

Le champ itemsList est un tableau de chaines de caractères, chaque élément pouvant être de l'un des types suivants:

  • [idArticle] — ajoute un article (quantité 1)
  • [idArticle]_[quantite] — préciser la quantité
  • [idArticle]_[quantite]_[titre personnalisé]_[prix personnalisé] — forcer le titre et le prix
  • [idArticle]_[quantite]_[titre]_[prix]_[idDéclinaison1]_[idDéclinaison2]_[idDéclinaison3]_[idDéclinaison4]_[idDéclinaison5] — ajouter jusqu'à 5 déclinaisons
  • Vente libre en rayon : -[idRayon]_[prix]_[titre] — crée une ligne libre rattachée au rayon
  • Vente libre : Free_[prix]_[titre] — crée une ligne libre
Rappel : si idUser est omis, le logiciel utilise/crée automatiquement un utilisateur “webservice”.

Exemples JavaScript

Add items to an unvalidated order, and validate the order

async function recordSaleWithExistingClient(){ const body = new URLSearchParams({  shopID: SHOPID,  key: APIKEY,  orderID: 123456,  payment: -1 }); body.append("itemsList[]", "Free_12.99_Item"); body.append("itemsList[]", "Free_9.99_Other item"); const res = await fetch("https://kash.click/workers/editOrder.php", {  method: "POST",  headers: { "Content-Type": "application/x-www-form-urlencoded" },  body }); let payload; try{ payload = await res.json(); }catch{ payload = await res.text(); } console.log(payload);}

Assign a client to an existing unvalidated order

async function recordSaleWithExistingClient(){ const body = new URLSearchParams({  shopID: SHOPID,  key: APIKEY,  payment: -2,  orderID: 123456,  idClient: 123 }); const res = await fetch("https://kash.click/workers/editOrder.php", {  method: "POST",  headers: { "Content-Type": "application/x-www-form-urlencoded" },  body }); let payload; try{ payload = await res.json(); }catch{ payload = await res.text(); } console.log(payload);}

Record a payment for the order

async function recordSaleWithNewClient(){ const body = new URLSearchParams({  shopID: SHOPID,  key: APIKEY,  orderID: 123456,  payment: 123456 }); const res = await fetch("https://kash.click/workers/editOrder.php", {  method: "POST",  headers: { "Content-Type": "application/x-www-form-urlencoded" },  body }); let payload; try{ payload = await res.json(); }catch{ payload = await res.text(); } console.log(payload);}

Réponse JSON attendue

Commande validée, non payée

{ "success": true, "orderID":17724460, "paymentLink":"A link the client can use to pay the order", "invoice":"URL of the PDF invoice"}

Commande non validée, non payée

{ "success": true, "orderID":17724461, "paymentLink":"A link the client can use to pay the order", "quote":"URL of the PDF qduote"}

Commande validée, payée

{ "success": true, "orderID":17724461, "invoice":"URL of the PDF qduote"}

Echec

{ "success": false, "result": "Error message"}
Register now
Licence Creative Commons Ce document est mis à disposition selon les termes de la licence Creative Commons Attribution 4.0 International (CC BY 4.0) .