v1.0.0
12 Sep 2026First release.
Added
Validators::check($kind, $value)returning aResultwith aReason, aCheckedlevel, the cleaned value, the formatted value, the country and the details the number encodes.- Validation rules for every kind, as strings (
'iban','emirates_id','vat:DE','iban:AE,SA') and as a rule object (new IdRule('iban')with->only(),->country()and->allowUnknown()). - Messages that say what is wrong — "that IBAN has a digit wrong", "that CNIC is too short" — taken from the reason code, and translatable like any other Laravel language file.
- The same coverage as the JavaScript package: IBAN for all 78 registry countries, European VAT for 28 (15 with verified check digits), Emirates ID, UAE TRN, Saudi ID and VAT, Qatar ID, Kuwait Civil ID, Bahrain CPR, Oman civil number, CNIC, NTN, PAN and GSTIN.
- 224 shared test vectors, generated from the JavaScript package, asserting that both sides answer identically — including the reason code and the formatting.
- A framework-free core: the validators work in any PHP application, with or without Laravel.