Cuprins
96.000 de lei. Atât iese plafonul pentru un client ipotetic cu 12 milioane cifră de afaceri, 2 milioane capitaluri proprii și clasa de risc B. Ajung acolo mai jos, pas cu pas. Mai important decât cifra e că o poți explica: oricine din firmă poate reface calculul și ajunge la același rezultat.
Limita de credit comercial e suma maximă pe care ți-o poate datora un client la un moment dat: facturi emise și neîncasate, plus comenzile pe care urmează să le livrezi. În multe firme se stabilește la negociere, după cât cere clientul și cât de mult vrea agentul comanda. Rezultatul e previzibil. Clienții cei mai insistenți primesc plafoanele cele mai mari, indiferent cât de solizi sunt.

Ideea din spate
O firmă mare poate datora mai mult decât una mică. O firmă cu capitaluri solide poate duce un șoc fără să-și oprească plățile. Iar una cu semnale de risc merită un plafon mai mic, oricât de mare ar fi. Modelul de mai jos pune în cifre exact aceste trei idei, nimic mai mult.
Procentele și coeficienții sunt orientativi. Tu îi calibrezi după marja ta, după mărimea obișnuită a comenzilor și după cum ai încasat până acum.
Două baze, păstrezi pe cea mică
Prima bază vine din capitalurile proprii, adică ce aparține cu adevărat firmei după ce își scade datoriile. Un plafon egal cu un procent din ele, de exemplu 10%, ține expunerea la un nivel pe care firma l-ar putea acoperi din resurse proprii. Dacă capitalurile sunt negative, baza e zero. Poți lucra și cu o astfel de firmă, dar cu plată în avans, garanție sau scrisoare de bonitate.
A doua bază vine din cifra de afaceri. Un procent mic din ea, de exemplu 1%, îți dă o valoare pe măsura volumului pe care firma îl rulează obișnuit. Din cele două o păstrezi pe cea mai mică. Așa, o firmă cu vânzări mari și capitaluri subțiri nu primește un plafon exagerat, și nici una cu capitaluri mari și activitate mică.
Ajustarea după risc
Baza se înmulțește cu un coeficient legat de clasa de risc, de la A (scor 80–100, risc foarte scăzut) la E (scor sub 35, risc foarte ridicat). Nu te încurca la sens: scorul mare înseamnă client solid.
| Clasă | Coeficient orientativ |
|---|---|
| A | 1,0 |
| B | 0,8 |
| C | 0,5 |
| D | 0,2 |
| E | 0 |
E primește zero pentru că include, printre altele, firmele în insolvență, plafonate la E pentru anii de la deschiderea dosarului.
Corecțiile din afara bilanțului
Bilanțul e anual, deci îți scapă tot ce s-a întâmplat recent. Corecțiile le iei din surse mai rapide, iar cea mai utilă e lista de restanțe ANAF. Eu aș face așa: dacă firma e pe listă și datoria crește față de lista anterioară, înjumătățești plafonul. Dacă e inactivă fiscal, plafonul e zero până se lămurește.
La final, rezultatul se oprește la plafonul maxim din politica ta, oricât de solid ar fi clientul. Nicio firmă nu ar trebui să-ți poată datora mai mult decât îți permiți să pierzi.

Calculul pentru clientul din exemplu
Clientul ipotetic are în ultimul bilanț o cifră de afaceri de 12.000.000 de lei, capitaluri proprii de 2.000.000 de lei, clasa de risc B și nu apare pe lista de restanțe ANAF.
Din capitaluri iese 200.000 de lei (10%). Din cifra de afaceri, 120.000 de lei (1%). Păstrezi 120.000. Înmulțit cu 0,8 pentru clasa B, dă 96.000 de lei. Fără restanțe, nu aplici nicio corecție. Dacă politica ta are un maxim de 150.000 de lei pe client, plafonul final e 96.000 de lei.
Acum îl pui lângă nevoia reală. Să zicem că clientul comandă lunar marfă de 40.000 de lei și cere 60 de zile de plată. Expunerea lui obișnuită va fi în jur de 80.000 de lei, deci încape, cu o rezervă mică. Dacă ar cere 90 de zile, expunerea ar ajunge la 120.000 și ar depăși plafonul. Atunci fie scurtezi termenul, fie ceri o garanție pentru diferență.
În cod
Datele vin din două rute ale API-ului Bilanț: sumarul, cu cifrele principale din ultimul an (GET /api/v1/bilant/{cui}/sumar, un credit), și scorul de risc (GET /api/v1/bilant/{cui}/risc, trei credite).
COEFICIENTI = {"A": 1.0, "B": 0.8, "C": 0.5, "D": 0.2, "E": 0.0}
def plafon(cifra_afaceri, capitaluri, clasa, restante_in_crestere=False,
inactiv=False, maxim_politica=150_000):
if inactiv or capitaluri <= 0:
return 0
baza = min(0.10 * capitaluri, 0.01 * cifra_afaceri)
valoare = baza * COEFICIENTI[clasa]
if restante_in_crestere:
valoare *= 0.5
return int(round(min(valoare, maxim_politica), -3))
print(plafon(12_000_000, 2_000_000, "B")) # 96000
Valorile le iei din data.sumar.cifra_afaceri și data.sumar.capitaluri din sumar, din data.clasa din răspunsul de risc, iar semnalul despre restanțe din data.evolutie.directie al dosarului de restanțe, când e crestere. Inactivitatea e în profilul fiscal, în data.fiscal.inactiv.activ. Legătura cu API-ul poate arăta așa:
import os, requests
BAZA = "https://www.bilantapi.ro/api/v1"
ANTETE = {"X-API-KEY": os.environ["BILANTAPI_KEY"]}
def cere(ruta):
return requests.get(BAZA + ruta, headers=ANTETE, timeout=10).json()["data"]
def plafon_client(cui):
sumar = cere(f"/bilant/{cui}/sumar")["sumar"]
risc = cere(f"/bilant/{cui}/risc")
restante = cere(f"/fiscal/{cui}/restante")
return plafon(sumar["cifra_afaceri"], sumar["capitaluri"], risc["clasa"],
restante_in_crestere=restante["evolutie"]["directie"] == "crestere")
Cele trei cereri costă împreună 7 credite pe client: unul pentru sumar și câte trei pentru risc și restanțe.
Unde modelul te lasă singur
Firmele fără bilanț sunt prima gaură. O firmă înființată anul acesta n-are cifre, deci modelul n-are din ce calcula. Pentru ea pornești cu un plafon mic și fix și îl crești pe măsură ce plătește.
A doua e istoricul tău cu clientul. Unul care plătește la timp de cinci ani merită poate mai mult decât spune modelul, iar unul care întârzie constant, mai puțin. Modelul nu știe nimic din toate astea. Tu știi.
A treia e concentrarea. Dacă un singur client ajunge să reprezinte o bucată mare din creanțele tale, riscul e al tău, nu al lui, chiar dacă fiecare plafon în parte e rezonabil. Pune și o limită pe ponderea fiecărui client.
Cât de des recalculezi
O dată pe an, după ce apar bilanțurile noi, plus corecția din restanțe la fiecare listă trimestrială. Păstrează în fișa clientului cifrele folosite și data calculului. Când vine agentul și cere o majorare pentru clientul lui preferat, știi exact de la ce pornești discuția.
Cifrele și scorul de risc sunt pe pagina API Bilanț, iar felul în care se calculează clasa e explicat în metodologia scorului de risc. Primești 250 de credite gratuite când îți deschizi contul, fără card. La 7 credite pe client, poți calcula plafoane pentru vreo 35 de clienți.
Întrebări frecvente
Ce procent din capitaluri să folosesc pentru limită?
Nu există un procent valabil pentru toată lumea. Cele din articol sunt orientative și le calibrezi după marja ta, mărimea comenzilor și cum ai încasat până acum.
Clientul are capitaluri proprii negative. Ce fac?
Modelul îi dă plafon zero. Poți lucra totuși cu el, dar cu plată în avans sau cu o garanție.
Ce date îmi trebuie pentru model?
Cifra de afaceri și capitalurile din sumarul de bilanț, clasa de risc și, dacă vrei, evoluția restanțelor la ANAF.



