numerik-laravel maintained by slashlab
Description
Laravel validation rules for Polish identification numbers (PESEL, NIP, REGON, KRS) — powered by slashlab/numerik.
Author
Last update
2026/04/28 00:17
(dev-main)
License
Downloads
0
numerik-laravel
Laravel validation rules for Polish identification numbers — PESEL, NIP, REGON, and KRS. Powered by slashlab/numerik.
Requirements
- PHP 8.3+
- Laravel 11, 12, or 13
Installation
composer require slashlab/numerik-laravel
The service provider is auto-discovered — no manual registration needed.
Usage
Validation rules
Use the rules in form requests or Validator::make() calls:
use SlashLab\NumerikLaravel\Rules\PeselRule;
use SlashLab\NumerikLaravel\Rules\NipRule;
use SlashLab\NumerikLaravel\Rules\RegonRule;
use SlashLab\NumerikLaravel\Rules\KrsRule;
public function rules(): array
{
return [
'pesel' => ['required', new PeselRule()],
'nip' => ['required', new NipRule()],
'regon' => ['required', new RegonRule()],
'krs' => ['required', new KrsRule()],
];
}
Strict mode
All rules accept an optional strict parameter (default true). In strict mode, PESELs with future birth dates or all-identical digits are rejected:
new PeselRule(strict: false)
String-based rules
Rules are also available as strings via the service provider:
'pesel' => ['required', 'pesel'],
'nip' => ['required', 'nip'],
'regon' => ['required', 'regon'],
'krs' => ['required', 'krs'],
Changelog
See CHANGELOG.md.
Contributing
See CONTRIBUTING.md.
Security
See SECURITY.md.
License
MIT — see LICENSE.
If this saved you time → ☕ Buy me a coffee