Développement module HelloAsso Checkout

Bonjour à tous,
Je suis tout nouveau sur Dolibarr et je m’efforce depuis quelques semaines déjà à transférer toute la compta de mon asso depuis Zipbooks et mes adhérents depuis Salesforce.
Pour transférer les membres pas de soucis, pour la compta c’est un autre problème mais je m’en débrouille en faisant des imports directement dans phpmyadmin pour récupérer toutes mes factures, paiements de facture, lien entre paiement et facture, etc etc etc
A force de bricoler pour pouvoir importer un maximum d’information je me rends compte que Dolibarr est vraiment un super outil et qu’il y a une communauté ultra présente à côté ! Bon il n’est pas 100% parfait, il pourrait être plus esthétique, mais il fait parti de ce que j’appelle le « web moche mais efficace » :rofl: (Ne le prenez pas mal).
Donc un grand grand merci à tous les développeurs qui ont su faire évoluer ce projet depuis plusieurs décennies ! :clap: :clap:

J’en viens au sujet qui m’intéresse : HelloAsso.
J’ai déjà vu plusieurs sujet sur un moyen de connecter HelloAsso à Dolibarr. Ces sujets datent un peu car depuis ils sont passés à l’API v5 qui je pense offre beaucoup plus de possibilité que la v3 ET SURTOUT ils ont développé une API de paiement ! Ca s’appelle HelloAsso Checkout, on peut facilement trouver la documentation technique en cherchant dans google (je ne peux pas publier de lien).

Grâce à cette API nous (nous la communauté, moi tout seul je ne sais pas développer une API) pourrions développer un module permettant de mettre HelloAsso comme moyen de paiement dans Dolibarr (comme pour Stripe). Sachant en plus qu’en passant par l’API, plus de pourboire automatique de ce que j’ai compris et on ne sort pas du nom de domaine de l’asso.

Alors voilà ma question, est-ce que certains bossent déjà sur le sujet ? Ou y-a-t’il des volontaires ?

A bientôt

Bonjour,

Concernant HelloAsso, je vous conseille la lecture de ce fil (si ce n’est pas déjà fait) :

Bonjour, oui je l’ai déjà lu mais il ne s’agit pas de la même API. Celle-ci permet de récupérer les membres.
Celle dont je vous parle fait uniquement les paiements en ligne c’est « payment gateway »

Personne n’est intéressé pour développer ce module ?
La documentation de l’API : doc

Bonjour
La question de l’intérêt est une chose et je n’ai pas trop de doute, le financement du développement une autre :slightly_smiling_face:
Il faut évaluer la charge de développement et ensuite voir si qqu’un peut financer tout ou partie ou faire le choix d’investir en fond propre.
A la grosse louche implémenter une API c’est rarement moins de 10 jours dev si on veut faire un module digne de ce nom.
Donc je reformulerais la question en qui veut/peut financer ? Utilisateur ou développeur (sur ces fonds propres)

1 « J'aime »

Bonjour;
J’ai commencé le développement d’un module externe permettant le check out avec l’API HelloAsso. Ayant bien avancé dans la phase de développement, je souhaite passer dans une phase de test. J’ai donc besoin de personnes pour le tester.
Le sujet étant lancé, je me suis dit que c’était le bon endroit pour demander des testeurs.
Vous pourrez trouver les sources de ce module dans le dépôt Github DoliCloud/DoliMods

dans le dossier htdocs/helloasso

Merci à tous ceux qui testerons et contribueront.
Requiert dolibarr develop ou v20 alpha

Bonjour,

Super nouvelle ! J’ai copier/coller le répertoire du module sur mon instance mais j’obtiens une erreur 500 en voulant entrer dans les paramètres du modules ?

Bonjour
Il faut l’installer dans le dossier custom de l’installation Dolibarr

J’ai toujours cette même erreur.
J’ai essayé d’installer en compilant dans un zip et en passant par « déployer/installer un module externe » (qui installe le module dans custom) mais toujours une erreur 500 en voulant rentrer dans les paramètres du module

Quelle est la version de Dolibarr et de php utilisée?
Pour que je puiss voir ce qu’il se passe de mon coté.

Oublié de prévenir que le module n’était compatible que avec la branche développement donc la future v20

Dolibarr v.19
Php 8.1.25

Est-ce qu’il y a un moyen pour que je configure le module en modifiant les fichiers du module ?

Bonjour,

Fonctionne sur la branche developpement.

Sur v18.0.5 par contre erreur suivante
Fatal error: Uncaught Error: Call to undefined method FormSetupItem::setAsSelectBankAccount() in /htdocs/custom/helloasso/admin/setup.php on line *128*

Pour aider à trouver le problème, voici mon log apache :

[Tue Feb 20 14:26:11.795130 2024] [mpm_event:notice] [pid 162:tid 139912293377600] AH00489: Apache/2.4.43 (Unix) configured -- resuming normal operations
[Tue Feb 20 14:26:11.815887 2024] [core:notice] [pid 162:tid 139912293377600] AH00094: Command line: '/opt/apache2-2.4/usr/sbin/apache2 -d /srv/data/.config/apache -f apache2.conf'
[Tue Feb 20 14:49:08.552626 2024] [autoindex:error] [pid 54691:tid 139911646476032] [client XXX.XXX.XXX.XXX] AH01276: Cannot serve directory /srv/data/web/vhosts/XXXXX.fr/htdocs/custom/helloasso/: No matching DirectoryIndex (index.php,index.html,index.htm) found, and server-generated directory index forbidden by Options directive
[Tue Feb 20 14:49:11.001683 2024] [autoindex:error] [pid 54691:tid 139911562548992] [client XXX.XXX.XXX.XXX] AH01276: Cannot serve directory /srv/data/web/vhosts/XXXXX.fr/htdocs/custom/: No matching DirectoryIndex (index.php,index.html,index.htm) found, and server-generated directory index forbidden by Options directive

et le log www-error :

[20-Feb-2024 16:05:33 Europe/Paris] PHP Fatal error:  Uncaught Error: Call to undefined method FormSetupItem::setAsSelectBankAccount() in /srv/data/web/vhosts/XXXXX.fr/htdocs/custom/helloasso/admin/setup.php:128
Stack trace:
#0 {main}
  thrown in /srv/data/web/vhosts/XXXXX.fr/htdocs/custom/helloasso/admin/setup.php on line 128

@hop , on a la même erreur en fait …

J’ai réussi à bypass le problème avec la fonction permettant de définir le compte bancaire par défaut pour essayer de tester le module.

Malgré le fait que j’ai vérifié 50 fois mes client_ID et client_secret je ne parviens pas à me connecter à l’API helloasso « ErrorBadClientIdOrSecret »
Je pense qu’il y a un problème avec la fonction « doConnectionHelloasso() »

J’arrive pourtant à obtenir un token en passant par PostMan

En espérant t’aider un peu

Tu utilises une instance helloasso test type helloasso-sandbox ?
Car si oui vérifie que tu as bien mis les valeurs dans la version test de ces constantes
Exemple : HELLOASSO_TEST_CLIENT_ID

Sinon pense a activer la constante HELLOASSO_LIVE pour utiliser une instance type helloasso

Pour le problème de la fonction qui fait error 500 s’est dû au fait que ce module est compatible uniquement à partir de la v20

J’ai testé les deux (côté dolibarr) : live et test.

Si je comprends bien ton code, tu vérifies s’il y a une clé dans les champs concernant le mode test pour activer le mode test ?

Côté helloasso je n’ai pas de choix à faire, il n’y a que les clés dans « intégration API ». On ne peut pas sélectionner test ou live.

Pour l’erreur 500, je me passerai de la définition du compte bancaire pour le moment.

Une idée pour résoudre mon problème ?

J’ai essayé sur une instance en version 20 et ça ne fonctionne pas non plus…

Peux tu en dire plus: Quelle erreur technique as-tu dans les log Dolibarr et Apache

Et bien il n’y a pas d’erreur dans les logs Dolibarr (syslog) ni dans Caddy (server web, je n’utilise pas apache).

En fait dans la page de paramètre du module, je rentre mes clés et mon slug, j’enregistre et quand je fais tester la connexion j’ai une « infoboite » rouge en haut à droite avec « BadCliendIDorSecret »… pas plus d’informations

Une amélioration a été faite dans le module pour avoir plus d’info sur l’erreur. Peux tu reprendre la dernière version en git et retester…