diff --git a/README.md b/README.md index d1c41a4..0e8e44d 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,26 @@ -# HelloAsso Paheko Adapter +# Paheko Adapter [HelloAsso](https://www.helloasso.com/) <-> [Paheko](https://paheko.cloud/) +CSV <-> [Paheko](https://paheko.cloud/) -The goal is to provide a way for organizations: -- to import helloasso membership information and members into paheko +The goal is to provide a way for organizations to import members and memberships data into the Paheko software from Helloasso or from CSV. + +**WARNING: This is a very custom script adapted for my environment and requirements**, but I plan to make it more flexible in the future. And with some specifics features: -- manage subscriptions and activities -- implement helloasso custom fields mapping to paheko custom fields -- avoid duplication +- clean-up and normalization of data +- handle subscriptions and activities +- handle linked users +- handle additional donations +- implement additional custom fields +- WIP: update the data without duplication. -Written in ust. +IO: +- read from stdin for the CSV +- use the Helloasso unofficial API to read data +- use the [Paheko API](https://paheko.cloud/api) + +Written in the Rust programming language. ## Getting started @@ -42,11 +52,6 @@ PB: l'API permet d'importer des activités, mais pas de lier une écriture compt ya une table `acc_transactions_users` qui permet de lier une transaction avec une activité d'un utilisateur -### références helloasso - -le `order.id` et le `answer.id` que retourne l'API d'helloasso sont en fait les mêmes, - - ## Import from CSV ``` @@ -60,3 +65,10 @@ cat ./tmp/adhesions_papier_nov2023.csv | cargo run -- --source csv ``` cat ~/.mnt/etoiledebethleem/copyparty/adhesions/to_import.csv | head -n 25 | sed ':a;N;$!ba;s/\(Champ complémentaire [0-9]\)\n/\1 /g' | sed 's/Champ complémentaire \([0-9]\)/CC \1/g' ``` + +## Run in prod + +``` +cargo run -- --source helloasso | tee ./.out/2024-01-21_2_ha.log +cargo run -- --source helloasso | tee ./.out/2024-01-21_2_ha.log +```