Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Moneybird debiteuren — Claude Skill

Een Agent Skill voor debiteurenbeheer in Moneybird: openstaande posten opvragen, bankafschriften matchen en betalingen registreren — met een verplichte controle tegen dubbele boekingen.

Waarom die controle er is. Bij een eerdere opzet werden bestaande betalingen opnieuw toegevoegd, met dubbele betalingen in de administratie als gevolg. Er zat geen fout in de koppeling en geen fout in het model: de handeling deed exact wat er stond, maar wist niet dat hij al eerder was uitgevoerd.

Een vraag twee keer stellen is gratis. Een betaling twee keer registreren is dat niet.

Deze skill bestaat vooral om die fout niet nog eens te maken.

Twee versies — en dit is de eenvoudigste

Dit project bestaat in twee smaken. Ze concurreren niet met elkaar; ze zitten op een andere laag.

skill-moneybird (deze repo) skill-moneybird-typescript
Wat het is een Claude Agent Skill: een set instructies in het Nederlands broncode: TypeScript-functies die de Moneybird-API aanroepen
Wie doet het werk een AI-assistent, via Moneybirds eigen AI-koppeling jouw eigen programma
Hoe je het gebruikt je vraagt in gewone taal: "welke klanten hebben een betalingsachterstand?" je roept een functie aan: getOpenInvoicesWithDetails()
Nodig Claude of ChatGPT, plus een Moneybird-koppeling Node.js, TypeScript, en ergens om het te draaien
Programmeren nee ja
Draait vanzelf nee — jij begint het gesprek ja — cron, webhook of trigger naar keuze
Uitkomst een antwoord in de chat, per keer net iets anders geformuleerd dezelfde input geeft altijd dezelfde output
Installeren map kopiëren naar ~/.claude/skills/ npm install in je eigen project

Het onderscheid in één zin

Deze skill vertelt een AI hoe hij zich moet gedragen. De TypeScript-versie doet het werk zelf.

Daar volgt de rest uit. Een skill is tekst: hij bevat regels, volgorde en waarschuwingen, maar voert niets uit — dat doet het model, via een koppeling. Dat maakt hem flexibel (je kunt vragen stellen die niemand had voorzien) en tegelijk minder voorspelbaar dan code.

Welke kies je?

Wat je wilt Kies
Even weten wie er nog moet betalen deze skill
Een bankafschrift verwerken terwijl je meekijkt en goedkeurt deze skill
Vragen stellen die je vooraf niet had bedacht deze skill
Geen code aanraken deze skill
Elke maandagochtend automatisch een debiteurenoverzicht mailen TypeScript
Direct reageren als er een betaling binnenkomt (webhooks) TypeScript
Dit inbouwen in een eigen dashboard of portaal TypeScript
Precies kunnen nalezen wat er gebeurt, regel voor regel TypeScript

Begin hier. Deze versie is in vijf minuten werkend en dekt verreweg de meeste situaties. Kom je iets tegen dat niet kan — plannen, herhalen, integreren — dan is de TypeScript-versie de volgende stap.

Je kunt ze ook naast elkaar gebruiken: deze skill voor de dagelijkse vragen, de code voor wat automatisch moet draaien.

Wat in beide versies hetzelfde is

  • De duplicaatcontrole — dezelfde regel, dezelfde sleutel (bedrag + datum), dezelfde uitkomsten.
  • De veiligheidsregels — read-only beginnen, goedkeuring per handeling, nooit een token in een bestand.
  • De setup — beide hebben een administratie-ID en een API-token nodig, op dezelfde manier aangemaakt.
  • De licentie — MIT.

Wat er niet hetzelfde is: alleen de TypeScript-versie kan webhooks ontvangen en kan als MCP-server worden aangeboden.

Wat de skill doet

  • Openstaande facturen en betalingsachterstanden opvragen en rapporteren
  • Een bankafschrift matchen aan openstaande facturen
  • Betalingen registreren — alleen na duplicaatcontrole en expliciete goedkeuring
  • Een verwerkingslog bijhouden, zodat een volgende ronde weet wat er al gedaan is

Wat de skill bewust níét doet: facturen aanmaken of verwijderen, betalingen wijzigen of terugdraaien, herinneringen versturen zonder opdracht.

De duplicaatcontrole

Voor elke betaling die geregistreerd zou worden:

Situatie Actie
Zelfde bedrag, zelfde datum al aanwezig duplicaat → niet registreren
Zelfde bedrag, andere datum mogelijk een echte tweede betaling → voorleggen aan de gebruiker
total_unpaid is al 0 niets te registreren → overslaan

De datum is wat het onderscheid maakt. Dedupliceer je alleen op bedrag en klant, dan gooi je legitieme tweede betalingen weg. Dedupliceer je niet, dan boek je dubbel.

Vóór je schrijft: een momentopname

Moneybird kent geen "ongedaan maken" voor geregistreerde betalingen. De skill vraagt daarom vóór elke batch de openstaande posten op en bewaart ze, en vergelijkt daar na afloop mee. Zo zie je precies wat er veranderd is in plaats van het te moeten reconstrueren.

Twee regels die dit samenvatten: altijd controleren, en zorgen voor een backup. Het gaat mis op de dag dat er haast is.

Installeren

Kopieer de map moneybird-debiteuren/ naar je skills-map:

# persoonlijk, beschikbaar in elk project
cp -r moneybird-debiteuren ~/.claude/skills/

# of alleen voor dit project
cp -r moneybird-debiteuren .claude/skills/

Claude laadt de skill zelf zodra een vraag erover gaat. Aanroepen kan ook expliciet met /moneybird-debiteuren.

Instellen

Je hebt twee gegevens uit Moneybird nodig. Beide maak je zelf aan; ze bestaan niet vanzelf.

1. Administratie-ID

Log in en kijk naar de URL:

https://moneybird.com/1415161819/feed
                      └────────┘
                      dit is je administratie-ID

2. API-token

Instellingen → Externe en AI-koppelingen. Bij het aanmaken kies je:

  • Rechten — Read only of read-write. Kies read-only tenzij je echt betalingen moet registreren.
  • Onderdelen — geef alleen wat nodig is: facturen, plus bank als je afschriften verwerkt.

⚠️ Read-only of read-write kun je achteraf niet wijzigen. Wil je het omzetten, dan maak je een nieuw token aan en verwijder je het oude.

⚠️ Een read-only token kun je alleen aanmaken als je eigenaar van de administratie bent.

3. Vastleggen

cp .env.example .env   # en vul je gegevens in

Zet ze in omgevingsvariabelen — nooit in een bestand in de projectmap. Staat er ooit toch een token in je code of documentatie: het bestand aanpassen helpt niet. Trek het token in Moneybird in en maak een nieuw aan, want het blijft geldig en staat inmiddels ook in je versiegeschiedenis en backups.

Alternatief: de officiële AI-koppeling

Moneybird biedt zelf een AI-koppeling (MCP) voor ChatGPT, Claude, Cursor en Mistral, met een keuze tussen read-only en read-write en zonder verwijderacties. Gebruik je die, dan verloopt authenticatie meestal via OAuth en heb je alleen het administratie-ID nodig. Deze skill werkt met beide routes.

Veiligheid

  • Begin read-only. Vragen stellen over je administratie levert al veel op en kan niets kapotmaken. Geef pas schrijfrechten als je vertrouwt wat je ziet.
  • Zet "altijd goedkeuren" niet aan. Laat je client per handeling om akkoord vragen — zeker bij geld.
  • Anonimiseer klantnamen en bedragen in alles wat naar buiten gaat: screenshots, blogs, trainingsmateriaal.
  • Controleer de eerste verwerkingen handmatig, en houd dat langer vol dan comfortabel voelt.
  • Moneybird stelt expliciet dat configuratie en gebruik je eigen verantwoordelijkheid zijn.

Aansprakelijkheid

Deze skill kan wijzigingen aanbrengen in je boekhouding. Controleer wat er gebeurt, zeker in het begin. De auteur is niet aansprakelijk voor onjuiste boekingen of gevolgschade — zie LICENSE.

Documentatie van Moneybird

Licentie

MIT — zie LICENSE.


Gemaakt door Eelco Wynia — AI-trainer en interim online marketeer. Bouw je liever zelf? → skill-moneybird-typescript

About

Claude Agent Skill voor debiteurenbeheer in Moneybird: openstaande posten opvragen, bankafschriften matchen en betalingen registreren — met een verplichte controle die dubbele boekingen voorkomt.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors