Skip to content
Back

Abifin

Full-Stack Developer

Abifin is a platform for financial advisors who help businesses find, win, and report on public funding. I'm one of its longest-running contributors, having built the contracts module, an AI-assisted grant-reporting and reconciliation engine, and the platform's SaaS subscription layer.

React, TypeScript, Laravel, PostgreSQL, Redis, Inertia.js, AI/LLM, Stripe

Overview

Abifin is a platform for financial advisors who help small and medium businesses find and secure public funding, and account for how that money is spent. It brings client management, funding-opportunity matching, contracts, grant reporting, and performance dashboards into one role-based system.

My Role

Full-stack developer and one of the platform’s longest-running contributors, with work spanning three areas: the contracts module, the grant-reporting and reconciliation engine, and the SaaS subscription layer. I work inside a large, mature codebase alongside an established team.

What I Built

  • Contracts: the entire feature from scratch: data model, a 4-step creation wizard with document upload and automatic status changes, flexible tender/incentive pricing, and a permission-aware pipeline dashboard
  • Grant reporting (rendicontazione): an AI-assisted system that reads invoice and payment PDFs, reconciles payments against invoices, tracks spend across progress milestones, and exports an audit-ready dossier
  • SaaS layer: a Stripe-billed Pro subscription with feature gating, separate dashboards for free and Pro users, and conversion-funnel analytics on the upgrade flow

Outcome

Proving, document by document, that grant money was spent correctly is one of the most tedious parts of public funding. The reporting work makes it a guided, mostly-automated flow: upload the documents, let the system read and match them, resolve what’s ambiguous by hand, and export a complete dossier. The subscription layer gave the product a commercial model, with the gating and analytics needed to grow paid plans.

Under the Hood

  • Reconciliation engine: PDF reading (text + image/OCR with input caps and provenance tracking), residuo-aware payment-to-invoice scoring, a clear split between deterministic and AI-suggested matches (with explanatory chips), CUP structure validation, F24 matching on invoice withholding tax, cumulative-payment splitting across line items, and a golden-set test suite for the matcher
  • Reporting UX: single-upload with automatic document sorting, drag-and-drop reconciliation, collapsible invoice-group rows in the economic plan, server-side pagination/search, and reload-free ZIP dossier export
  • Subscription layer: Stripe payments and invoice webhooks, an AccountEntitlementService as the single source of truth for account state, isPro() gating across features (including AI chat), and Pro-gated previews
  • Stack: Laravel 11 with a service layer, observers, and policy-based RBAC across 6+ roles; React 19 over Inertia.js; Redis-backed queues via Horizon; Docker deployment with Sentry error tracking