Introduction
🎯 Que fait ce module ?​
Le module Orders vous permet de créer, gérer et suivre les commandes des clients - depuis le passage à la caisse du panier jusqu'au traitement des paiements et à l'exécution des commandes - en gérant l'ensemble du cycle de vie des commandes e-commerce.
Considérez-le comme votre système de gestion des commandes - les clients ajoutent des articles au panier, passent des commandes, effectuent des paiements, et vous suivez tout, de la création de la commande à la livraison, le tout au sein de OneEntry.
📖 Explication Simple​
Chaque application e-commerce a besoin d'une gestion des commandes :
- đź›’ Panier - Les utilisateurs ajoutent des produits, passent Ă la caisse
- 📋 Création de Commande - Convertir le panier en commande avec les détails du client
- 💳 Traitement des Paiements - Accepter les paiements (carte de crédit, PayPal, etc.)
- 📦 Suivi des Commandes - Suivre le statut (en attente, en cours, expédié, livré)
- 📊 Gestion des Commandes - Voir toutes les commandes, filtrer par statut, rechercher
- 🧾 Détails de la Commande - Voir les articles, totaux, informations client
Problèmes :
- 🔒 Pas d'intégration de paiement - Suivi manuel des paiements
- 📊 Suivi médiocre - Difficile de trouver des commandes, filtrer par statut
- 🔄 Pas d'automatisation - Mises à jour manuelles des statuts, pas de notifications
- đź’¸ Pas de calcul de taxes/frais de port - Calculer manuellement
La solution Orders :
Avantages :
- 🔒 Paiements intégrés - Stripe, PayPal, autres passerelles
- 📊 Suivi avancé - Filtrer, rechercher, exporter des commandes
- 🔄 Flux de travail automatisés - Mises à jour de statut, notifications
- đź’¸ Calculs automatiques - Taxes, frais de port, remises
✨ Concepts Clés​
Qu'est-ce qu'une Commande ?​
Une Commande est une transaction d'achat d'un client contenant :
- Articles de Commande - Produits/services achetés (quantité, prix)
- Informations Client - Nom, email, téléphone
- Adresse de Livraison - Lieu de livraison
- Adresse de Facturation - Informations de facturation
- Détails de Paiement - Méthode de paiement, ID de transaction
- Totaux de Commande - Sous-total, taxe, frais de port, total
- Statut de Commande - État actuel (en attente, en cours, terminé)
- Horodatages - Dates de création, de mise à jour, de finalisation
Structure de la Commande​
Chaque commande a cette structure :
{
id: 179,
storageId: 1,
createdDate: '2025-07-03T00:43:02.908Z',
statusIdentifier: 'inProgress',
formIdentifier: 'orderForm',
formData: [
{
marker: 'order_name',
type: 'string',
value: 'Ivan'
}
],
attributeSetIdentifier: 'order_form',
totalSum: '300.00',
currency: 'USD',
paymentAccountIdentifier: 'cash',
paymentAccountLocalizeInfos: { title: 'Cash' },
products: [
{
id: 2957,
title: 'Cosmo',
sku: null,
previewImage: null,
price: 150,
quantity: 2,
},
],
isCompleted: true,
}
Cycle de Vie de la Commande​
1. Le client ajoute des articles au panier
↓
2. Passe Ă la caisse
↓
3. Saisit les informations de livraison/facturation
↓
4. Sélectionne la méthode de paiement
↓
5. Commande créée (statut : en attente)
↓
6. Paiement traité (statut : en cours)
↓
7. Commande confirmée (statut : confirmée)
↓
8. Articles préparés (statut : en cours)
↓
9. Commande expédiée (statut : expédiée)
↓
10. Commande livrée (statut : terminée)
Exemples de Statuts de Commande​
| Statut | Signification | Quand l'utiliser |
|---|---|---|
| en attente | Commande créée, en attente de paiement | Juste passée, paiement non traité |
| en cours | Paiement reçu, préparation des articles | Paiement confirmé, emballage des articles |
| confirmée | Commande confirmée, prête à être expédiée | Paiement validé, commande vérifiée |
| expédiée | Commande envoyée au client | Colis envoyé par le transporteur |
| livrée | Commande reçue par le client | Livraison confirmée |
| terminée | Commande terminée, aucune action nécessaire | Transaction complète |
| annulée | Commande annulée | Annulée par le client/admin |
| remboursée | Paiement retourné au client | Remboursement traité |
| échouée | Échec du paiement ou du traitement | Paiement refusé |
Opérations Courantes sur les Commandes​
| Opération | Description | Exemple de Cas d'Utilisation |
|---|---|---|
| Créer une Commande | Convertir le panier en commande | Bouton de passage à la caisse cliqué |
| Obtenir des Commandes | Lister toutes les commandes (paginé) | Tableau de bord admin |
| Obtenir une Commande par ID | Récupérer une commande spécifique | Voir les détails de la commande |
| Mettre à Jour le Statut | Changer le statut de la commande | Marquer comme expédiée |
| Calculer les Totaux | Calculer les taxes, frais de port, total | Résumé de la caisse |
| Annuler une Commande | Annuler une commande en attente | Demande d'annulation du client |
| Rembourser une Commande | Retourner le paiement au client | Retour de produit |
Pourquoi Utiliser le Module Orders ?​
| Avantage | Description |
|---|---|
| Gestion Automatisée des Commandes | Pas de suivi manuel, tout est automatisé |
| Intégration de Paiement | Stripe, PayPal, autres passerelles intégrées |
| Suivi des Statuts | Mises à jour de statut de commande en temps réel |
| Notifications Client | Envoi automatique de confirmations de commande, mises à jour d'expédition |
| Gestion des Stocks | Déduction automatique des stocks lors de la commande |
| Analytique & Reporting | Rapports de ventes, suivi des revenus |
| Sécurité | Traitement des paiements conforme PCI |
📋 Ce que Vous Devez Savoir​
Les Commandes sont Créées à partir des Données du Panier​
Vous devez fournir :
- Informations Client - Nom, email, téléphone
- Articles de Commande - Produits, quantités, prix
- Adresse de Livraison - Lieu de livraison
- Méthode de Paiement - Comment le client paiera
Gestion des Statuts de Commande​
Suivez l'avancement de la commande Ă travers les statuts :
Flux de statuts courants :
- Produits numériques : en attente → en cours → terminé
- Produits physiques : en attente → en cours → expédié → livré → terminé
- Annulé : n'importe quel statut → annulé
- Remboursé : terminé → remboursé
Traitement des Paiements​
Les commandes s'intègrent aux passerelles de paiement
💡 Notes Importantes​
Les Commandes sont Créées dans OneEntry​
Le module Orders gère l'ensemble du cycle de vie des commandes :
- ✅ Créer des commandes à partir des données du panier
- âś… Traiter les paiements
- âś… Mettre Ă jour le statut de la commande
- ✅ Suivre l'expédition
- ❌ NE gère PAS l'interface du panier (vous construisez cela)
Votre responsabilité :
- Construire l'interface du panier
- Collecter les informations du client
- Afficher la confirmation de commande
Traitement des Paiements​
Les commandes s'intègrent aux passerelles de paiement :
- Stripe (recommandé)
- PayPal
- Passerelles personnalisées
Important :
- Ne jamais stocker directement les détails de la carte de crédit
- Utiliser la tokenisation (Stripe.js, PayPal SDK)
- OneEntry gère le traitement sécurisé des paiements
Gestion des Stocks​
Les commandes automatiquement :
- ✅ Déduire l'inventaire lors de la création de la commande
- âś… Restaurer l'inventaire lors de l'annulation
- âś… Suivre les niveaux de stock
Meilleure pratique : Vérifiez le stock avant de créer la commande
Sécurité​
Les commandes contiennent des données sensibles :
- Informations personnelles du client
- Détails de paiement
- Adresses de livraison
Toujours :
- Utiliser HTTPS pour les pages de passage Ă la caisse
- Valider les données avant de créer des commandes
- Mettre en œuvre une authentification appropriée
- Suivre la conformité PCI DSS pour les paiements
📊 Tableau de Référence Rapide​
| Méthode | Description |
|---|---|
| createOrder() | Créer une nouvelle commande |
| getAllOrdersByMarker() | Obtenir toutes les commandes (paginé) |
| getOrderByMarker() | Obtenir un objet de stockage de commande spécifique par marqueur. |
| getAllOrdersStorage() | Obtenir tous les objets de stockage de commande. |
| getOrderByMarkerAndId() | Obtenir une commande par marqueur et ID à partir de l'objet de stockage de commande créé par l'utilisateur. |
| updateOrderByMarkerAndId() | Mettre à jour une commande par marqueur et ID à partir de l'objet de stockage de commande créé par l'utilisateur. |
❓ Questions Fréquemment Posées (FAQ)​
Comment créer une commande avec plusieurs produits ?​
Passez un tableau d'objets produits dans les données de la commande.
Chaque produit doit inclure id, quantity, et price.
Le total est calculé automatiquement en fonction des quantités et des prix des produits.
Puis-je mettre à jour une commande après sa création ?​
Oui, utilisez updateOrderByMarkerAndId() pour modifier les détails de la commande tels que le statut, l'adresse de livraison ou les données de la commande.
Cependant, une fois le paiement traité, soyez prudent lors de la modification des articles ou des totaux de la commande.
Comment suivre les changements de statut de commande ?​
Utilisez le champ statusIdentifier pour suivre l'état actuel de la commande.
Vous pouvez également configurer des webhooks ou utiliser le module Events pour recevoir des notifications lorsque le statut de la commande change.
Quelle est la différence entre le stockage de commandes et les commandes individuelles ?​
Le stockage de commandes est un conteneur qui regroupe des commandes liées (comme les commandes d'un formulaire ou d'un canal de vente spécifique). Les commandes individuelles sont les transactions d'achat réelles au sein de ce stockage. Utilisez des marqueurs pour identifier et organiser différents stockages de commandes.
Comment gérer les annulations et les remboursements de commandes ?​
Mettez à jour le statut de la commande à 'annulée' en utilisant updateOrderByMarkerAndId().
Pour les remboursements, utilisez le module Payments pour traiter la transaction de remboursement, puis mettez à jour le statut de la commande à 'remboursée'.
Puis-je récupérer l'historique des commandes d'un client ?​
Oui, utilisez getAllOrdersByMarker() avec des filtres appropriés pour récupérer toutes les commandes d'un client spécifique.
Vous pouvez filtrer par ID utilisateur, plage de dates ou d'autres critères.
🎓 Meilleures Pratiques​
- Validez le panier avant de créer la commande - Vérifiez la disponibilité du stock
- Calculez les totaux sur le serveur - Ne faites jamais confiance aux calculs côté client
- Envoyez des confirmations de commande - Envoyez un email aux clients après la commande
- Suivez le statut de la commande - Mettez Ă jour le statut au fur et Ă mesure de l'avancement de la commande
- Gérez les échecs de paiement - Logique de réessai, messages d'erreur clairs
- Implémentez la recherche de commandes - Permettez aux clients de trouver facilement leurs commandes
- Conservez l'historique des commandes - Gardez des enregistrements pour le service client
- Utilisez la pagination - Ne chargez pas toutes les commandes en mĂŞme temps
Plus d'informations sur l'interface utilisateur du module https://doc.oneentry.cloud/docs/category/orders
Définition du module Orders​
const { Orders } = defineOneEntry( "your-project-url", { "token": "your-app-token" });
🔗 Documentation Connexe​
- Module Produits - Gérer les produits disponibles à l'achat
- Module Utilisateurs - Gérer les clients qui passent des commandes
- Module IntegrationCollections - Intégrations de passerelles de paiement
- Module Events - Notifications de statut de commande