logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Business::BR::Ids - Modules for dealing with Brazilian identification codes (CPF, CNPJ, ...)

Author

       A. R. Ferreira, <ferreira@cpan.org>

Description

       This is a generic module for handling the various supported operations on Brazilian identification
       numbers and codes.  For example, it is capable to test the correctness of CPF, CNPJ and IE numbers
       without the need for explicitly 'requiring' or 'using' this modules (doing it automatically on demand).

       test_id
             test_id($entity_type, @args);
             test_id('cpf', $cpf); # the same as "require Business::BR::CPF; Business::BR::CPF::test_cpf($cpf)"

           Tests  for  correct  inputs  of  ids  which  have  a corresponding Business::BR module.  For now, the
           supported id types are 'cpf', 'cnpj', 'ie', and 'pis'.

       canon_id
             canon_id($entity_type, @args)

           Transform the input to a canonical form. The canonical form is well-defined and as short as possible.
           For instance, "canon_id('cpf', '29.128.129-11')" returns '02912812911' which has  exactly  11  digits
           and no extra character.

   EXPORT
       "test_id"  is  exported  by  default. "canon_id", "format_id", "parse_id" and "random_id" are exported on
       demand.

Name

       Business::BR::Ids - Modules for dealing with Brazilian identification codes (CPF, CNPJ, ...)

See Also

       Details on handling CPF, CNPJ, IE and PIS can be found in the specific modules:

       •   Business::BR::CPF

       •   Business::BR::CNPJ

       •   Business::BR::IE

       •   Business::BR::PIS

       Please reports bugs via CPAN RT, http://rt.cpan.org/NoAuth/Bugs.html?Dist=Business-BR-Ids

Synopsis

         use Business::BR::Ids;
         my $cpf = '390.533.447-05';
         print "ok as CPF" if test_id('cpf', $cpf);
         my $cnpj = '90.117.749/7654-80';
         print "ok as CNPJ" if test_id('cnpj', $cnpj);

See Also