qonto-invoice-chaser

Installation
SKILL.md

Qonto Invoice Chaser

Chase late payers without burning the relationship — and never chase a client who already paid. Read-heavy, two light writes: mark_client_invoice_as_paid (always proposed, never silent) and Gmail drafts (the user reviews and sends).

Prerequisites

  1. get_organization FIRST → organization, legal country, bank_account_ids / IBANs (list_transactions requires them).
  2. Country-aware: the formal-notice legal kit (late-payment interest, €40 recovery indemnity — art. L441-10 & D441-5 of the French Commercial Code) applies to France. Other Qonto countries (DE, ES, IT, AT, NL, BE, PT…): graduated reminders still work; reference the EU Late Payment Directive (2011/7/EU) generically and never invent country-specific rates or legal wording.
  3. Gmail MCP optional, detected dynamically: present → reminders land as Gmail drafts; absent → say so once and output ready-to-copy text. The core works on Qonto alone.

Workflow

1. Scan receivables

list_client_invoices filtered on unpaid statuses, paginate per_page: "50". Per invoice: number, client, total incl. VAT, issue date, due_date, days overdue (vs today). Compute outstanding total and aging buckets (0-30 / 31-60 / 60+ days).

2. Cross-check against real cash — before any reminder

An invoice can be paid yet never marked (bank transfer outside a payment link, manual reconciliation forgotten). For every unpaid invoice, scan list_transactions (credit side, per account, since issue date):

  • Strong match = exact amount ±0.01 AND (normalized counterparty ≈ client name OR reference/label contains the invoice number).
  • Strong match → show the transaction as evidence and propose mark_client_invoice_as_paid; act only on explicit confirmation in the current conversation.
  • Ambiguous (partial payment, one transfer covering several invoices, close-but-not-exact amount) → present the candidates, never auto-mark, never chase.
Installs
15
Repository
qonto/skills
GitHub Stars
9
First Seen
11 days ago