Bravo pour Kresus / Import de données autres?

Je découvre Kresus depuis peu, étant sur firefly-iii précédemment l’import automatique était une vraie plaie via plaid/saltedge, je tenais à féliciter tout les participants à la création de ce projet c’est juste incroyablement efficace, tellement rapide je n’en reviens pas. Je suis déçu de ne pas en avoir entendu parler plus tôt haha :smiley: formidable outil !

Par contre j’aimerais pouvoir importer des données automatiquement venant d’autres plateformes que ce qui est déjà proposé. J’ai cru comprendre que c’était possible via l’API de Kresus mais je suis un peu perdu pour trouver quoi faire comment (je ne suis pas développeur pro j’aurais penché pour des petits scripts bash me permettant de convertir des csv en transactions sur Kresus).

Merci à tous pour ce projet et votre aide éventuelle :wink:

1 « J'aime »

Salut,

notre API n’est en effet pas vraiment documentée…
Le + simple est peut-être, selon ton profil, de regarder les requêtes HTTP effectuées par ton navigateur lorsque tu crées une opération manuelle : tu verras le endpoint et le payload.

Sinon côté serveur voici le endpoint: server/controllers/routes.ts · main · kresusapp / kresus · GitLab
et le controller: server/controllers/operations.ts · main · kresusapp / kresus · GitLab

Dis-moi si ça t’aiguille déjà un peu…

Merci beaucoup en effet pas bête de regarder ce qu’il se passe lorsqu’on fait la manip dans le navigateur ! Merci pour les autres liens je regarde tout ça et vous tiendrais au courant de mes avancées si j’en ai ^^

J’ai bien réussi à utiliser l’API pour créer une nouvelle opération en regardant le payload dans mon navigateur, par contre en cherchant à faire un import JSON je reste bloqué, comment créer une nouvelle opération ? Je reçois toujours ces erreurs et je ne sais pas trop comment les corriger
Ignoring orphan account:
Ignoring orphan operation:

Mon JSON (j’ai fait un export puis modifier pour ne garder qu’un compte et une nouvelle opération).

{
  "encrypted": false,
  "data": {
    "accounts": [
      {
        "type": "account-type.unknown",
        "customLabel": "Nom custom",
        "iban": null,
        "currency": "EUR",
        "excludeFromBalance": false,
        "id": 14,
        "accessId": 3,
        "vendorId": "manual",
        "vendorAccountId": "1",
        "importDate": "2022-02-22T17:39:55.159Z",
        "initialBalance": 0,
        "lastCheckDate": "2022-02-24T03:25:31.491Z",
        "label": "Compte manuel #1 (EUR)"
      }
    ],
    "operations": [
      {
        "accountId": 14,
        "categoryId": null,
        "type": "type.card",
        "customLabel": null,
        "label": "TEST",
        "rawLabel": "TEST",
        "date": "2022-01-31T22:00:00.000Z",
        "amount": 100
      }
    ]
  }
}

Merci d’avance !

Bonjour !

Il te faut d’abord créer un access (~= banque) pour y créer ton compte (un accès bancaire ayant 1 ou plusieurs comptes) !

Merci beaucoup pour cette rapidité de réponse !
D’accord j’ai réussi à faire marcher cela mais du coup ça me créer un autre compte / autre accès banquaire (je test que en compte manuel), il y a moyen d’ajouter des transactions à un compte déjà existant ou pas ?

Soit tu importes tout soit tu ne crées que les opérations (via le endpoint de création) pour un compte existant.

L’import est prévu pour l’initialisation uniquement, pas l’import régulier.

Ok d’accord, comme je récupère des transactions en csv je souhaitais les convertir en json pour tout importer d’un coup, mais je passerais par l’API du coup.
Merci pour les infos