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

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);

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.

AUTHOR

A. R. Ferreira, <[email protected]>

COPYRIGHT AND LICENSE

Copyright (C) 2005-2007 by A. R. Ferreira

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.