Skip to main content

An unofficial extension to Marshmallow fields and validators for Brazilian documents

Project description

This library provides Marshmallow fields and validators for Brazilian documents:

  • Brazilian phone number

  • Brazilian birth, marriage and death certificates

  • CNH (Carteira Nacional de Habilitação)

  • CNPJ (Cadastro Nacional da Pessoa Jurídica)

  • CPF (Cadastro de Pessoas Físicas)

Installing

$ pip install marshmallow-br

Usage

from pprint import pprint
from marshmallow import Schema

from marshmallow_br import fields


class Documents(Schema):
    certificate = fields.Certificate(mask=True)
    cnh = fields.CNH(mask=True)
    cnpj = fields.CNPJ(mask=True)
    cpf = fields.CPF(mask=True)
    phones = fields.List(fields.Phone(mask=True, require_ddi=False, require_ddd=True))

raw_data = {
    "certificate": "12173901552014167634174940702955",
    "cnh": "64076917022",
    "cnpj": "52203670000109",
    "cpf": "98008862068",
    "phones": ["5511999999999", "11 999999999", "+55(11)99999-9999", "11 9999-9999"],
}

data = Documents().load(raw_data)
pprint(data)

# {'certificate': '121739.01.55.2014.1.67634.174.9407029-55',
# 'cnh': '64076917022',
# 'cnpj': '52.203.670/0001-09',
# 'cpf': '980.088.620-68',
# 'phones': ['+55 (11) 99999-9999',
#             '(11) 99999-9999',
#             '+55 (11) 99999-9999',
#             '(11) 9999-9999']}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

marshmallow-br-0.1.1.tar.gz (8.7 kB view hashes)

Uploaded Source

Built Distribution

marshmallow_br-0.1.1-py3-none-any.whl (9.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page