Commandes

Le plugin « commandes » permet de gérer des commandes.

Attention Le plugin ne s’occupe pas de la gestion des paniers, ni des paiements, ni des factures. Pour l’aspect « boutique », voir le post-scriptum.

Ce plugin a été élaboré grâce aux contributions de Matthieu Marcillaud, Rastapopoulos, Yffic, touti, Cyril, et du rédacteur de cet article.

Principe

Le plugin agit sur 2 fronts :
→ d’une part il permet aux utilisateurs de gérer les commandes depuis l’espace privé.
→ d’autre part, il fournit les outils permettants et aux développeurs et aux autres plugins de créer et manipuler des commandes.

Installation et dépendances

Le plugin est repertorié dans le dépôt proposé par défaut : « SPIP-Zone - Plugins ». Aussi, il est installable depuis la page Gestion des plugins, onglet Ajouter des plugins si vous avez activé ce dépôt.

2 dépendances seront installées automatiquement :

  • Saisies
  • API prix : permet de calculer les prix HT et TTC des commandes et de leurs détails.

D’autres plugins sont plus ou moins optionnels, là c’est à vous de voir :

  • Notifications avancées : à installer si on veut bénéficier de l’envoi de notifications par email.
  • Facteur : sans lui, les notifications seront au format texte au lieu d’un joli HTML.
  • Coordonnées : fortement recommandé afin de pouvoir gérer les adresses liées aux commandes (livraison et facturation).
  • Contacts et organisations : peut vous servir à gérer les auteurs/clients des commandes.

Fonctionnement

A l’installation, 2 tables sont créées :

  • La table principale spip_commandes sert à enregistrer les données de base des commandes : l’auteur/client, le numéro de référence, le statut et les dates.
  • La table auxiliaire spip_commandes_details sert à enregistrer les « détails » correspondants aux commandes, c’est à dire tous les éléments à partir desquels on va pouvoir calculer le prix total d’une commande : objets et services commandés, frais annexes, ristournes etc.

En théorie, à chaque commande enregistrée dans la table spip_commandes doit correspondre une ou plusieurs lignes de détails dans la table spip_commandes_details.

La table spip_commandes :
Une commande est un objet éditorial, au même titre que les articles, brèves et cie. Elles ont un auteur (le client), différents statuts et 3 types de dates : date de création, date de paiement & date d’envoi.
La date de création correspond au champ « date », elle est définie à la création de la commande, et n’est pas censée être altérée par la suite.
Le changement d’un statut peut déclencher l’envoi de notifications par email, et la mise à jour de la date s’y rapportant :
→ passer le statut à "payée" met à jour la date de paiement.
→ passer le statut à "envoyée" met à jour la date d’envoi.

composition de la table spip_commandes
id_commande Identifiant unique de la commande
reference Numéro de référence (il ne s’agit pas d’une clé unique).
id_auteur Identifiant de l’auteur/client
statut encours, attente, partiel, paye, envoye, retour_partiel, retour, erreur
date Date de création
date_paiement Date de paiement
date_envoi Date d’envoi
maj Date de la dernière mise à jour

La table spip_commandes_details :
Pour le contenu des commandes, on parle de « détails » : chaque commande est constituée d’une ou plusieurs lignes de détails.
Un détail est tout élément qui participe au prix d’une commande.
On peut distinguer 2 types de détails :

  • Les détails correspondants directement aux objets ou aux services commandés.
  • Les détails « annexes » : il peut s’agir des frais de port, des frais de dossier, des ristournes etc.

Une ligne de détail comprend à minima les champs descriptif et prix_unitaire_ht, le cas échéant complétés par les champs taxe et quantite.
Dans le cas où l’objet commandé est un objet éditorial SPIP, des champs objet et id_objet permettent de l’identifier.

composition de la table spip_commandes_details
id_commandes_detail Identifiant unique du détail (attention au « s » à commandes)
id_commande Identifiant de la commande concernée
descriptif Texte décrivant le détail. S’il s’agit d’un objet éditorial, il peut s’agir de son titre, descriptif ou autre.
quantite Quantité
prix_unitaire_ht Prix Hors Taxe
taxe Taxe (TVA)
statut Statut
objet Type d’objet s’il s’agit d’un objet éditorial
id_objet Identifiant de l’objet s’il s’agit d’un objet éditorial
maj Date de la dernière mise à jour

Exemple des enregistrements en base pour une commande et ses détails

Prenons une commande de 2 objets avec TVA à 20%, comportant des frais de port et une ristourne. Dans la base de donnée, ça nous donne ceci :

1 ligne dans la table spip_commandes

id_commande reference id_auteur statut date date_paiement date_envoi maj
1 xxxxxx 1 encours 2014-05-14 09:00:00 0000-00-00 00:00:00 0000-00-00 00:00:00 2014-05-14 09:00:00

4 lignes dans la table spip_commandes_details

id_commandes

_detail

id_commande descriptif quantite prix

_unitaire_ht

taxe statut objet id_objet maj
1 1 Gibolin 2000 2 8 0.2 produit 1 2014-05-14 09:00:00
2 1 Ripolin 5000 1 12 0.2 produit 2 2014-05-14 09:00:00
3 1 Frais de port 0 4 0 2014-05-14 09:00:00
4 1 Ristourne 0 -2 0 2014-05-14 09:00:00

Boucles et balises

Balises #PRIX et #PRIX_HT

Grâce au plugin API prix, les balises #PRIX et #PRIX_HT permettent d’obtenir automagiquement les prix TTC et HT d’une commande ou d’un de ses détails.

Dans une boucle COMMANDES :

  • #PRIX = somme des prix TTC des détails.
  • #PRIX_HT = somme des prix HT des détails.

Dans une boucle COMMANDES_DETAILS :

  • #PRIX = #QUANTITE * (#PRIX_UNITAIRE_HT + (#TAXE * #PRIX_UNITAIRE_HT))
  • #PRIX_HT = #QUANTITE * #PRIX_UNITAIRE_HT.

Boucles

Exemple minimal de boucle affichant pour chaque commande un résumé de ses détails et son prix total TTC :

<BOUCLE_commandes(COMMANDES)>
<h4>Commande N°#ID_COMMANDE</h4>
<ul><BOUCLE_details(COMMANDES_DETAILS){id_commande}>
<li>[(#QUANTITE) *]#DESCRIPTIF = #PRIX</li>
</BOUCLE_details></ul>
Prix total TTC : #PRIX
</BOUCLE_commandes>

Gestion dans l’espace privé

Configuration
La page de configuration est accessible depuis le menu Configuration > Commandes
On peut y gérer les 3 points suivants :

  • La durée d’expiration des commandes ayant le statut « en cours ». On considère que les commandes restant « en cours » pendant plus d’un certain temps sont des commandes abandonnées : il est inutile de les conserver dans la base.
  • l’activation et le fonctionnement des notifications (cf. plus bas).
  • L’affichage en page d’accueil de la liste des commandes « actives » (cf. plus bas).

Liste des commandes
Une page Commandes est accessible depuis le menu Edition.
L’encart à gauche sert à filtrer les commandes en fonction de leurs états, de leurs dates de création, et des auteurs/clients.
Au niveau de la liste, les commandes ayant le statut « envoyé » sont surlignées en vert, afin de repérer facilement les commandes terminées.

Page de gestion des commandes

Fiche d’une commande
La fiche d’une commande est composé de 3 parties :

  • Le contenu de la commande : il s’agit d’un tableau listant les détails de la commande.
  • Les adresses : si le plugin Coordonnées est installé, sont affichées les adresses associées à la commande, ou à défaut celles associées à l’auteur de la commande.
  • L’auteur/client de la commande : si le plugin Contacts et Organisations est installé, on affiche les infos du contact, sinon des infos sur le client.

A noter : Pour les adresses, il n’est pas nécessaire d’activer l’ajout de coordonnées aux commandes dans les options du plugin Coordonnées.

Fiche d’une commande

Commandes « actives »
Il est possible d’afficher en page d’accueil la liste des commandes « actives ». il s’agit des commandes nécessitant une prise en charge. Pour se faire, il faut activer l’option dans la configuration du plugin, et choisir les statuts correspondants.

Commandes « actives » en page d’accueil

Notifications

Mise en place
On peut activer ’envoi d’emails de notification au vendeur et au client lorsque les commandes acquièrent certains statuts.
Le plugin « Notifications avancées » doît être installé. Le plugin Facteur est également fortement recommandé afin d’envoyer les messages au format HTML.
Rendez vous ensuite sur le formulaire de configuration du plugin pour activer et configurer les notifications.

Personnalisation des emails
Par défaut, les messages envoyés sont spartiates :

Email par défaut envoyé au client

Leurs squelettes sont présents dans le répertoire /notifications du plugin.
Pour chaque type de notification (vendeur & client), il y a 3 variantes :

  • commande_xxx_html.html au format HTML.
  • commande_xxx.html au format texte brut.
  • commande_xxx_court.html au format court, type microblog ou SMS.

Par commodité, ces 6 squelettes incluent tous le même squelette mutualisé, avec différents paramètres pour moduler l’affichage : contenu_commande_mail.html.
Il suffit de surcharger ce squelette pour le personnaliser selon vos besoins.

Si vous avez besoin de 2 squelettes vraiment différents pour les emails vendeur et client, vous pouvez au choix :

  • Faire ça au niveau du squelette contenu_commande_mail.html en jouant sur le paramètre #ENV{qui} :
    [(#ENV{qui}|=={client}|oui)<INCLURE{fond=mon_squelette_mail_client, env}>][(#ENV{qui}|=={vendeur}|oui)<INCLURE{fond=mon_squelette_mail_vendeur, env}>]
  • Ou bien surcharger directement les 6 squelettes clients et vendeurs.

Fonctions utiles

Voici une liste non exhaustive de certaines fonctions, celles qui pourront vous être utiles lors de l’intégration du plugin dans votre projet. Pour les détails (paramètres etc.) et la liste complète, voir le site https://code.spip.net/commandes/.

commandes_fonctions.php
commandes_lister_statuts
Cette fonction retourne les différents statuts des commandes. On peut s’en servir comme filtre dans les squelettes pour obtenir la chaîne de langue d’un statut : [(#STATUT|commandes_lister_statut)]
inc/commandes.php
creer_commande_encours
Crée une commande avec le statut « en cours » pour le visiteur actuel. La commande créée est « vide » : la fonction ne se charge pas de créer les détails. C’est le rôle des plugins tiers (Commandes de paniers par ex.).

A noter : on considère qu’il ne peut y avoir qu’une commande « en cours » par session et par auteur. Si une telle commande est déjà présente dans la session, elle va être supprimée de la base et de la session avant la création de la nouvelle.

Exemple :

$creer_commande = charger_fonction('creer_commande_encours', 'inc/');
$id_commande = $creer_commande;
commandes_supprimer
Permet de supprimer « proprement » une ou plusieurs commandes, en s’occupant également des données associées. Pour chaque commande à supprimer, la fonction effectue les actions suivantes :
-  suppression de la commande
-  suppression de ses détails
-  dissociation de ses adresses liées, et éventuellement suppression si elles se retrouvent orphelines.

Exemple :
$ids_commandes = array(1,2,3);
$supprimer_commandes = charger_fonction('commandes_supprimer', 'inc/');
$supprimer_commandes($ids_commandes);
traiter_notifications_commande
Envoie les notifications par email d’une commande, si les conditions sont réunies. Cette fonction est appelée lors de la création d’une commande, puis à chaque changement de statut.
inc/commandes_reference.php
inc_commandes_reference_dist
Cette fonction retourne une référence unique utilisée pour remplir le champ éponyme lors de la création d’une commande. Il s’agit du temps écoulé depuis le 1er janvier 1970, en secondes.
Elle est destinée à être surchargée pour l’adapter à vos besoins.
action/xxx.php
supprimer_commande
Supprime « proprement » une commande. Fait appel à la fonction commandes_effacer, avec les mêmes effets donc.

Exemple :
#URL_ACTION_AUTEUR{supprimer_commande,#ID_COMMANDE,#SELF}
instituer_commande
Change le statut d’une commandes

Exemple :
#URL_ACTION_AUTEUR{instituer_commande,#ID_COMMANDE-envoye,#SELF}

Pour aller plus loin : « Commandes » au sein du framework e-commerce

Ce plugin fait partie d’un framework dédié au e-commerce, il s’interface notamment avec les plugins suivants :

Il n’y a pas encore de documentation qui traite du framework dans son ensemble, on notera cependant les 2 plugins suivants :

  • Tuto commerce » : tutoriel des briques minimales à mettre en place pour une boutique en ligne.
  • Zcommerce : charger les plugins nécessaires à la création d’une boutique en ligne

Pour un aperçu général de tous les outils destinés au e-commerce, voir l’article Inventaire des outils SPIP pour du e-commerce

Discussion

38 discussions

  • 1

    Bonjour
    J’utilise le plugin panier et lorsque je transforme mon panier en commande dans le cas d’un auteur « non authentifié », j’ai une erreur sql dans action_commandes_paniers_dist ligne 69

    SELECT id_commande
    FROM <span class="base64" title="PGNvZGUgY2xhc3M9InNwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lIiBkaXI9Imx0ciI+Z3B0b3VybmFnZTwvY29kZT4="></span>.spip_commandes
    WHERE statut='encours' AND date>'2018-12-10 17:12:00' AND source='panier#29' AND id_commande=
    2018-12-11 17:12:00 127.0.0.1 (pid 1153) :Pub:ERREUR: Erreur mysql 1064

    En effet, cette requête sert à identifié une commande déjà existante lors d’un retour arrière de l’utilisateur :

    	$id_commande = sql_getfetsel("id_commande", "spip_commandes", $w = "statut=" . sql_quote('encours') . " AND date>" . sql_quote(date('Y-m-d H:i:s', strtotime('-' . lire_config('paniers/limite_ephemere', 24) . ' hour'))) . " AND source=" . sql_quote("panier#$id_panier") . " AND id_commande=" . session_get('id_commande'));

    et session_get('id_commande') est vide

    • Je me répond : J’ai mis en place une procédure d’inscription automatique et d’authentification avant de pouvoir traiter une commande. C’est en effet impossible de traiter une commande juste avec un auteur non connu en base.

    Répondre à ce message

  • 1

    Bonjour,

    J’utilise le plugin Panier et je souhaite ajouter au panier le prix du champ #PRIXPROMO au lieu du champ #PRIX.

    J’ai essayé de remplacer #PRIX par #PRIXPROMO dans panier.html mais sans succès.

    Avez-vous déjà mis en place le panier avec un autre champ que #PRIX comme dans mon cas ?

    -  Liste de produits avec possibilité ajout panier : https://www.dufresne.pro/-Jardinage-.html
    -  Produit : https://www.dufresne.pro/Serre-aluminim-ACD-4-8m%C2%B2-135.html
    -  Panier : https://www.dufresne.pro/panier.html

    Merci.

    Gil

    • Si t’as des trucs perso, c’est plutôt avec l’API du plugin Prix qu’il faut voir. En surchargeant ou en définissant la fonction de prix de tel ou tel objet que tu veux, et en allant chercher le bon champ (vu que par défaut ça prend prix et prix_ht).

    Répondre à ce message

  • 2

    Bonjour,
    J’ai installé les plugins nécessaires au e-commerce et j’essaie d’utiliser le plugin Tuto commerce. Bien que tout soit correctement paramétré cela refuse de m’afficher la page 1re étape (produits). J’obtiens une page blanche !!! La table produits démos est bien installée. Il n’y a aucune documentation ni lien permettant de contacter les développeurs de tuto commerce. Comment s’y prendre ?
    Merci.
    Yann

    • Bonjour, difficile de d’aider sans voir le site. Dans la config du plugin Produits a-tu coché : Publier les rubriques qui contiennent des produits publiés ?

    • Bonjour,

      Active le report des erreurs en ajoutant ces lignes dans ton fichier mes_options.php, ça indiquera l’origine du problème :

      error_reporting(E_ALL);
      @ini_set('display_errors', 'On');

      Le plugin est lui-même une forme de tutoriel/documentation, c’est pourquoi un article me semblait redondant. Mais cela dit ça permettrait de faire des retours et ça lui donnerait un peu de visibilité, je vais y réfléchir.

      Je n’ai pas eu beaucoup de temps de dispo pour le maintenir non plus, et ça a pas mal bougé depuis dans commandes/bank/produits, possible qu’il y ait des indications devenues obsolètes ou des choses qui ne fonctionnent plus.

    Répondre à ce message

  • 2

    Bonjour,

    J’utilise le plugin commande pour mon dernier site avec boutique en ligne et c’est très pratique. Bravo pour votre travail de développement. Cependant, il y a un détail que je ne trouve nulle part dans la documentation...
    J’aimerai personnaliser et éditer le modèle de facture proposé dans l’espace privé à > Activité > Commandes. Je voudrai pouvoir y ajouter le logo du site, l’adresse, le SIRET etc, mais ne comprends pas du tout où... J’ai sur l’aperçu de la commande :

    « Votre nom

    Adresse complete
    de la structure
    XXXXX VILLE

    01 23 45 67 89
    06 23 56 78 89

    Siret : 33 100000000000
    TVA : 33 100000000000 »

    que j’aimerai pouvoir éditer avec les informations relatives au site.
    Il n’y a pas non plus de marge sur la page... il me faudrait toucher au CSS.

    Merci pour votre aide.

    • Il ne faut pas utiliser les factures du plugin Commandes en fait, ça date d’avant, il faudrait les retirer complètement. Ça ne suit pas les obligations légales, notamment qu’une facture éditée ne peut plus du tout être modifié après coup (on peut juste l’annuler mais pas la modifier).

      Il faut utiliser le plugin Factures, fait par Nursit comme le plugin Bank.
      https://github.com/nursit/factures/

    • Merci RastaPopoulos pour cette réponse.
      Je vais donc télécharger le plugin de Nursit. Il fonctionne bien avec SPIP 3.1 j’imagine...
      Bonne soirée.

    Répondre à ce message

  • 3

    Hello,

    J’ai mis la durée de conservation des commandes en cours à 24h e là j’en vois une qui date du 29 mars toujours notée en cours sur la page ?exec=commandes.
    Est-ce normal ?
    Merci

    • Tu as le plugin Corbeille ? Ou tu as des visites qui permettent de lancer les génies et tâches récurrentes ?

      Parce que c’est fait dans le pipeline « optimiser_base_disparus », qui est lancé dans un génie. Et qui aussi est désactivé entièrement par Corbeille.

      https://zone.spip.org/trac/spip-zone/browser/_plugins_/commandes/trunk/commandes_pipelines.php#L30

    • Ah oui effectivement j’ai le plugin Corbeille. je l’ai désactivé et en lançant le cron c’est bien effacé merci.
      Les commandes en cours trop anciennes ne devraient-elles pas passer dans la corbeille justement ?
      dd

    • Faut l’implémenter… Il y a plein (PLEIN) d’objets de plugins qui n’implémentent pas le plugin Corbeille.

      Enfin le vraiment mieux, ça serait de se coller enfin à refaire ce pas mal vieux plugin, pour qu’il fonctionnement automatiquement sur tous les objets, sans rien avoir à implémenter. Mais ya un peu de boulot… :)

    Répondre à ce message

  • 2

    Bonjour,
    Je bloque sur un truc qui devrait être pourtant hyper simple. Mais je ne m’en sors pas, je m’énerve et je préfère solliciter vos lumières.

    je suis entrain de créer une mini interface d’admin hors espace privé. Je veux faire un recap de commande, jusque là tout roule. mais je bloque pour afficher les données de l’auteur de la commande en question. Je ressort toujours les données de l’admin qui est connecté. Voici mon bout de code foireux :

    <BOUCLE_si_admin(AUTEURS){id_auteur=#SESSION{id_auteur}}{statut=0minirezo}>
    
    <BOUCLE_commandes(COMMANDES) {id_commande}>
    <h1>COMMANDE #REFERENCE</h1>
    
    <BOUCLE_details(COMMANDES_DETAILS){id_commande}>
    	 [(#DESCRIPTIF)]
        </BOUCLE_details> 
    <li>[<strong>Commande passée le :</strong> (#DATE|affdate{'d/m/Y'})]</li>
    <li><strong>Prix de la commande :</strong>#PRIX</li>
    
    <BOUCLE_client2(AUTEURS)  {id_auteur=#ID_AUTEUR}>
    
    <h2>Informations client</h2>
    <li>#NOM </li>
    <li> #ADRESSE  #CODE_POSTAL  #VILLE </li>
    <li>#EMAIL</li>
    <li>Identifiant client : #ID_AUTEUR</li>
    
    </BOUCLE_client2>
        </BOUCLE_commandes>
    
    	
    </BOUCLE_si_admin>

    Mon soucis concerne donc cette boucle <BOUCLE_client2(AUTEURS)  {id_auteur=#ID_AUTEUR}>
    qui ne ressort pas les données de l’auteur lié à la commande

    • T’es dans une boucle AUTEURS où t’as sélectionné le visiteur connecté en cours… donc bah non, ton #ID_AUTEUR c’est celui là, que tu viens de sélectionné juste avant…

    • Oups j’avais oublié de supprimer ce message. Je m’en suis sorti.
      J’ai ajouté tout à la boucle commande et ça marche comme voulu.
      Merci

    Répondre à ce message

  • Bonjour. ça faisait longtemps que je ne vous avais pas embêté.
    J’ai mis en place un système de commande basique en fonction d’objets liés aux articles. En gros un objet correspond à un nombre de jours de réservation.

    J’ai besoin de pouvoir passer des dates dans ma commande pour la période de réservation de l’objet.

    Ma contrainte est que lors d’une commande je dois commencer par les dates. Jusque là tout est okay, je fais passer mes dates dans la session, tout roule.

    J’ai créé dans « commande », 2 champs extras : date arrivée et date retour

    Je souhaiterais donc savoir comment je peux remplir ces deux champs extras (dans la BDD) lors de la validation de ma commande.

    Merci

    Répondre à ce message

  • 11

    Bonjour
    J’ai une dernière petite question afin de terminer le site sur lequel je bosse.
    Pour en arriver en temps voulu à gérer mes besoins j’ai codé le paiement via paypal mais donc surtout la gestion de l’IPN et la modification de statut + changement de date sur ma commande "payée’ dans la table spip_commandes

    Là où je bloque c’est que j’aimerai que la notification s’enclenche avec le passage du statut payé. Mais je ne vois pas vraiment ce qu’il me manque. Dois je incrémenter une autre base, faire un cron sur un fichier ?? Il me manque quelque chose.

    Merci

    • Alors déjà le paiement Paypal et plein d’autres sont déjà implémentés dans le plugin Bank qui gère et centralise tous les prestataires de paiements, et qui est très maintenu et très sécurisé. Je te conseille immensément fortement de l’utiliser plutôt que de maintenir toi-même un truc dans ton coin, surtout pour un truc aussi critique en sécurité que le paiement. Avec le plugin Factures qui va avec aussi (chaque transaction du plugin Bank génère une facture du plugin Facture).
      https://plugins.spip.net/bank.html
      https://github.com/nursit/factures/

      Ensuite les notifications sont déjà implémentées et configurables pour les commandes, pour ça il faut avoir le plugin « Notifications avancées » : c’est marqué dans la doc juste au dessus.

    • Merci pour ta réponse. En fait j’étais parti sur bank mais il me semblait qu’il n’était pas cablé avec Commandes du coup je suis passé au plugin Paypal mais « commandes paypal » n’était lus compatible 3.2 et je n’ai pas pou savoir si le version du plugin Paypal pouvait gérér la relation avec la commande. Bref j’ai tourné en rond, une autre personne m’a conseillé le plugin bank mais il m’était plus simple de m’en sortir dans les temps de la sorte.

      Je sais que commandes gère bien les notifications et j’utilise déjà cette fonction. C’est juste que du coup vu que j’ai codé un bout de code pour mettre à jour mon statut de commande à payé après validation de l’IPN (ce sont deux lignes de codes, juste un update de la base), mais ndu coup ce qui me manque c’est de savoir comment est censé s’enclencher la notification.

      Je sais que le type de question que je pose doit être chiant pour les devs mais il faut reconnaitre que la pluginisation du système de commande, bien que tip top à mon goût, manque un poil de doc et qu’avec les évolutions tout n’est pas toujours à jour.

      En l’occurrence bien qu’on me conseille fortement le plugin bank je ne suis pas certain qu’il gère derrière la relation avec le plugin commandes notamment.

    • +1 pour le plugin Bank.

      Pour les notifs qui ne se lancent pas, ça dépend de comment tu changes le statut de la commande dans ton code. Les notifications se lancent via commande_instituer(), donc si tu ne l’utilises pas directement ou via l’API (avec objet_instituer), pas de chocolat.

    • Merci, c’est exactement ce qu’il me fallait

    • Mais kek tu racontes. :D

      C’est le plugin Commandes qui gère le plugin Bank, et cela depuis des années. Ya strictement rien à faire. Quand une transaction de Bank est bien payée, ça met la commande liée en payée pareil, ça fait super longtemps et ça a toujours très bien marché.

      Pour les notifications je ne comprends pas non plus, il y a un panneau de config, on dit qu’on veut une notif lors de tels statuts, donc bah tu coches que tu veux le statut « payé » aussi et ça enverra une notif si ça passe en payé, ya rien à faire en tant que dev ou intégrateur pour ça donc pas spécialement de doc, c’est un panneau de config avec les cases à cocher des statuts.

    • Ah oui ok… Bien vu tcharlss… Si tu fais pas la modif avec les API officielles mais directement en changeant la base, ça va pas lancer les choses automatiques oui. (Mais bon Commandes avec Bank le fait déjà bien comme il faut justement !)

    • C’est vrai qu’il manque un peu de doc pour les interactions entre les différents plugins de commerce. Commandes et Bank sont bien intégrés ensembles : tu donnes le numéro de la commande dans #PAYER_ACTE et tout se fait automatiquement (notifs, retour IPN pour paypal etc.).

      Il y a un début de doc sous la forme d’un plugin : https://plugins.spip.net/tutocommerce.html

    • Je lisais juste plus haut dans le PS dela Doc
      « Le plugin Bank offre quant à lui tout un panel d’options de paiements, mais n’est pas (encore) interfacé avec le plugin Commandes. » ce qui m’avait forcément mis le doute

    • Ah oui, la doc n’est plus à jour sur ce point là.
      On va s’en occuper, merci pour le signalement.

    • Merci à vous surtout pour le super travail que vous faites et votre disponibilité.

    • Hop, P.-S. mis à jour

    Répondre à ce message

  • 2

    Bonjour
    Pouvez vous me confirmer que « Commandes de paniers » n’est plus utilisable avec la V 3.2 ?

    Répondre à ce message

  • Patrick ROUDEIX

    Je souhaite utiliser ce plugin pour gérer des abonnements annuels sur mon site www.mondoral.org mais j’aurai besoin d’adaptations, comment vous joindre ?

    Tels : 04 9272 8000 ou 06 8151 0663

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom