Înapoi la portofoliu
Webapp

Cămin Felix (Donații Soft)

Aplicație web pentru un cămin de copii care automatizează urmărirea sponsorilor, parsarea extraselor bancare MT940 și generarea documentelor de mulțumire.

Stack principal

Laravel 12
Livewire 3
PHP 8.2
SQLite
TCPDF phpoffice/phpword maatwebsite/excel jejik/mt940 kingsquare/php-mt940 Tailwind CSS Vite

Provocarea

Extrasele MT940 exportate din internet banking-ul BT și CEC au formate ușor diferite și câmpuri de referință inconsistente. Asocierea automată a plăților cu sponsorii trebuia să funcționeze chiar și când numele din extras nu corespundea exact cu cel din baza de date (variații de diacritice, prescurtări, ordine cuvinte).

Soluția

Implementat un pipeline de parsare în două etape: jejik/mt940 pentru structura MT940 standard, cu fallback la kingsquare/php-mt940 pentru variantele BT. Matching-ul sponsor-tranzacție folosește similaritate de string (similar_text + levenshtein) cu prag configurabil, plus matching pe CUI/CIF când e prezent în câmpul de referință. Tranzacțiile neconfirmate automat intră într-o coadă de review manual cu sugestii ordonate după scor.

Complexitate notabilă

Cămin Felix este un ONG care gestionează zeci de sponsori recurenți și ocazionali. Înainte de această aplicație, reconcilierea plăților cu sponsorii se făcea manual din extrase bancare exportate din internet banking — un proces lent și predispus la erori. Aplicația construită cu Laravel 12 și Livewire 3 permite importul direct al extraselor bancare în format MT940 (Banca Transilvania) și CSV (CEC Bank), parsarea automată a tranzacțiilor și asocierea lor cu sponsorii din baza de date. Fiecare tranzacție identificată actualizează automat istoricul de plăți al sponsorului respectiv. Modulul de raportare generează documente Word (phpoffice/phpword) și PDF (TCPDF) cu scrisorile de mulțumire personalizate per sponsor, exporturi Excel cu situația donațiilor pe perioade și borderouri XML pentru evidența contabilă. Livewire asigură o interfață reactivă fără a scrie JavaScript manual — filtrele, paginarea și preview-urile se actualizează în timp real. Proiectul include și un parser MT940 robust (jejik/mt940 + kingsquare/php-mt940) care gestionează variațiile de format între băncile românești, cu fallback pe parsare manuală pentru tranzacțiile nerecunoscute automat.

Rezultate cheie

  • Import și reconciliere automată a extraselor MT940 și CSV
  • Generare automată scrisori de mulțumire PDF și Word per sponsor
  • Export borderouri XML pentru evidență contabilă
  • Reducere semnificativă a timpului de procesare lunară a donațiilor

Vrei ceva similar?

Începe cu wizard-ul de estimare — răspunzi la câteva întrebări și primești un range de preț + timeline realist.