Skip to main content

No project description provided

Project description

pynubank

Python package PyPI - Python Version PyPI version Coverage Status Maintainability Join the chat at https://gitter.im/pynubank/pynubank

Acesse seus extratos do Nubank pelo Python (Baseado na versão js)

Instalação

Disponível via pip

pip install pynubank

Autenticação

Primeiro de tudo, precisamos nos autenticar.

Para isso, além do seu CPF e senha usuais, precisamos de um fator extra de autenticação.

Temos 3 opções disponíveis, com seus respectivos exemplos:

Tendo seguido com sucesso uma das opções, você pode tentar um dos exemplos a seguir!

Exemplos

:warning: Atenção: O Nubank pode bloquear a sua conta por 72 horas caso detecte algum comportamento anormal ! Por conta disso, evite enviar muitas requisições. Você também pode utilizar o MockHttpClient descrito abaixo.

Realizando testes com dados falsos

Você pode utilizar este recurso para receber dados falsos para testar a sua solução sem correr riscos de ser bloqueado pelo Nubank e com tempo de resposta instantâneo. Para isso, utilize o exemplo a seguir:

from pynubank import Nubank, MockHttpClient

nu = Nubank(MockHttpClient())
nu.authenticate_with_cert("qualquer-cpf", "qualquer-senha", "caminho/do_certificado.p12") # Essa linha funciona porque não estamos chamando o servidor do Nubank ;)

# Qualquer método chamado não passará pelo Nubank e terá o retorno instantâneo.

Cartão de Crédito

from pynubank import Nubank

nu = Nubank()

# Insira aqui o código para se autenticar!
# Veja a seção acima sobre autenticação para mais detalhes ;)

# Lista de dicionários contendo todas as transações de seu cartão de crédito
card_statements = nu.get_card_statements()

# Retorna um dicionário contendo os detalhes de uma transação retornada por get_card_statements()
# Contém as parcelas da transação
card_statement_details = nu.get_card_statement_details(card_statements[0])

# Soma de todas as compras
print(sum([t['amount'] for t in card_statements]))

# Lista de dicionários contendo todas as faturas do seu cartão de crédito
bills = nu.get_bills()

# Retorna um dicionário contendo os detalhes de uma fatura retornada por get_bills()
bill_details = nu.get_bill_details(bills[1])

NuConta

from pynubank import Nubank

nu = Nubank()

# Insira aqui o código para se autenticar!
# Veja a seção acima sobre autenticação para mais detalhes ;)

# Lista de dicionários contendo todas as transações de seu cartão de crédito
account_statements = nu.get_account_statements()

# Soma de todas as transações na NuConta
# Observacão: As transações de saída não possuem o valor negativo, então deve-se olhar a propriedade "__typename".
# TransferInEvent = Entrada
# TransferOutEvent = Saída
# TransferOutReversalEvent = Devolução
print(sum([t['amount'] for t in account_statements]))

# Saldo atual
print(nu.get_account_balance())

Mais exemplos

A pasta examples possui mais referencias de uso com autenticação e visualização dos dados.

Testes

  1. Instale os requirements
  2. Execute o comando pytest
$ pip install -r requirements.txt
$ pip install -r requirements-test.txt

$ pytest

Contribuindo

Envie sua PR para melhorar esse projeto ! 😋

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

pynubankasync-2.25.0.tar.gz (36.2 kB view details)

Uploaded Source

Built Distribution

pynubankasync-2.25.0-py3-none-any.whl (50.2 kB view details)

Uploaded Python 3

File details

Details for the file pynubankasync-2.25.0.tar.gz.

File metadata

  • Download URL: pynubankasync-2.25.0.tar.gz
  • Upload date:
  • Size: 36.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for pynubankasync-2.25.0.tar.gz
Algorithm Hash digest
SHA256 f612356b2ffadc65d9be5e619ea9672f83c75a8fc4bf65f5dd0f35c284fc6601
MD5 d3856864fb8bc75a4bddc57853fa5a0d
BLAKE2b-256 ea0a0e54708d685e8f7fd2388aadb551038edc00a7f336a20f067d7778a7a2d6

See more details on using hashes here.

File details

Details for the file pynubankasync-2.25.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pynubankasync-2.25.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ab080f19391e41c0a6ba0173eb4971f21eeed5585cbe3c4504e1cce12efe6afd
MD5 3942cbe495573ec40b377f5137f629b8
BLAKE2b-256 9e903f527f47a1581a243b751e641994b3e58eb46dfe00d3a3dcb40b0e6d7cb3

See more details on using hashes here.

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