smartmakersaasbilling
smartmakersaasbilling facture et encaisse les abonnements SaaS depuis le Dolibarr central. Il expose pour cela une API dédiée de machine à machine (M2M), composée de sept verbes sortants et d'un webhook entrant signé. L'authentification est déléguée au client OAuth M2M de smartauth ; le périmètre de chaque appelant est marqué en base et vérifié à chaque action.
À qui il s'adresse
Le module ne vise pas les utilisateurs finaux de Dolibarr, mais les prestataires qui déploient des webservices. Chaque webservice proposant une formule d'abonnement appelle l'API pour créer le tiers de son client, établir la commande, encaisser le règlement et se faire prévenir du paiement. L'administrateur Dolibarr, de son côté, déclare les clients autorisés, tient le catalogue des services et surveille les notifications de règlement.

Fonctionnalités principales
- Catalogue : l'appelant lit les fiches produit portant son préfixe, ainsi que la précision décimale des prix configurée sur l'instance.
- Tiers : le module crée le tiers du client, ou retrouve celui qui existe déjà. L'opération est idempotente sur le SIREN, si bien qu'une même société reste un seul tiers, quel que soit le nombre de services auxquels elle souscrit.
- Commande : le module crée la commande et ses lignes, de façon idempotente sur la référence d'acte, puis la valide en renvoyant son lien de paiement.
- Règlement : l'état du règlement se consulte à tout moment, et le module en notifie le webservice par un appel signé. Cette notification peut être rejouée aussi bien par l'appelant que depuis Dolibarr.
- Annulation et avoir : une commande non réglée s'annule, un acte déjà réglé se corrige par un avoir partiel qui laisse la facture d'origine intacte.
Ce qu'il ne fait pas
- Il ne porte aucune règle métier : ni rang, ni tranche, ni prorata. Le webservice appelant décide des faits et de leur qualification ; Dolibarr établit la facture et l'écriture comptable.
- Il ne fixe jamais de prix : celui-ci provient de la fiche produit, saisie à la main dans Dolibarr.
- Il n'attribue jamais de numéro : la numérotation des commandes et des factures reste du ressort de Dolibarr.
Prérequis
- Dolibarr 18 LTS ou plus récent
- Le module smartauth actif (authentification de l'API)
- Le module stripe actif pour encaisser les paiements en ligne