Bali (bali v0.5.0)
Módulo encargado de realizar las validaciones de identificadores personales y fiscales de México, Colombia, España, Portugal, Italia y Brasil
Link to this section Summary
Functions
Obtiene la lista de tipos de documentos soportados
Valida el identificador personal o fiscal segun el país(mx,co,es,pt,it,br) y tipo
Revisa si el tipo documento fiscal recibido se encuentra en la lista de documentos válidos y verifica que su valor sea correcto
Revisa si el tipo documento personal recibido se encuentra en la lista de documentos válidos y verifica que su valor sea correcto
Link to this section Functions
get_document_types()
Obtiene la lista de tipos de documentos soportados
validate(country, document_type, value)
Specs
Valida el identificador personal o fiscal segun el país(mx,co,es,pt,it,br) y tipo
Ejemplos:
# México
iex> Bali.validate(:mx, :curp, "ROCE000131HNLDNDA0")
{:ok, "ROCE000131HNLDNDA0"}
iex> Bali.validate(:mx, :curp, "BADD110313HCMLNS0Q")
{:error, "CURP inválido"}
iex> Bali.validate(:mx, :rfc, "AAFI7906296J1")
{:ok, "AAFI7906296J1"}
iex> Bali.validate(:mx, :rfc, "OIBD890101MQB")
{:error, "RFC inválido"}
# Colombia
iex> Bali.validate(:co, :cc, "123456789")
{:ok, "123456789"}
iex> Bali.validate(:co, :cc, "12345678912")
{:error, "CC inválida"}
iex> Bali.validate(:co, :ce, "123456")
{:ok, "123456"}
iex> Bali.validate(:co, :ce, "12345678")
{:error, "CE inválida"}
iex> Bali.validate(:co, :nit, "123456-1")
{:ok, "123456-1"}
iex> Bali.validate(:co, :nit, "123456-12")
{:error, "NIT inválido"}
# España
iex> Bali.validate(:es, :dni, "46324571H")
{:ok, "46324571H"}
iex> Bali.validate(:es, :dni, "46324571I")
{:error, "DNI inválido"}
iex> Bali.validate(:es, :nie, "Z1234567R")
{:ok, "Z1234567R"}
iex> Bali.validate(:es, :nie, "Z1234567I")
{:error, "NIE inválido"}
# Italia
iex> Bali.validate(:it, :cf, "VRDGPP13R10B293P")
{:ok, "VRDGPP13R10B293P"}
iex> Bali.validate(:it, :cf, "VRDGPP13R10B29BP")
{:error, "CF inválido"}
# Portugal
iex> Bali.validate(:pt, :nif, "123456789")
{:ok, "123456789"}
iex> Bali.validate(:pt, :nif, "12345678")
{:error, "NIF inválido"}
iex> Bali.validate(:pt, :cc, "12345678")
{:ok, "12345678"}
iex> Bali.validate(:pt, :cc, "1234567")
{:error, "CC inválido"}
# Brasil
iex> Bali.validate(:br, :cpf, "000.000.000-00")
{:ok, "000.000.000-00"}
iex> Bali.validate(:br, :cpf, "000.000.000-000")
{:error, "CPF inválido"}
iex> Bali.validate(:br, :cnpj, "00.000.000/0000-00")
{:ok, "00.000.000/0000-00"}
iex> Bali.validate(:br, :cnpj, "00.000.000/0000-000")
{:error, "CNPJ inválido"}
validate_fiscal_document(country, document_type, value)
Specs
Revisa si el tipo documento fiscal recibido se encuentra en la lista de documentos válidos y verifica que su valor sea correcto
validate_personal_document(country, document_type, value)
Specs
Revisa si el tipo documento personal recibido se encuentra en la lista de documentos válidos y verifica que su valor sea correcto