Skip to main content

Access Brazilian Central Bank PIX Open Data API (pandas-friendly)

Project description

pixbr

Python client for the Brazilian Central Bank (BCB) PIX Open Data API (Olinda / OData service). It hides the BCB's unusual OData URL syntax and returns pandas DataFrames.

This is the Python counterpart of the R package pixr.

Installation

pip install pixbr        # once published
# or, from source:
pip install -e ".[dev]"

Quick start

Reusable client (recommended for multiple requests):

from pixbr import PixClient

client = PixClient()

# PIX keys stock by participant (date in YYYY-MM-DD)
keys = client.keys("2025-12-01", filter="TipoChave eq 'CPF'", top=100)

# Transaction statistics (database in YYYYMM)
stats = client.transaction_stats("202509", filter="NATUREZA eq 'P2P'")

# Transactions by municipality
muni = client.transactions_by_municipality("202512", filter="Sigla_Regiao eq 'NE'")

# Fraud statistics (MED)
fraud = client.fraud_stats("202509", top=100)

Module-level convenience functions mirror the pixr names:

from pixbr import get_pix_transaction_stats, get_pix_summary, format_brl

df = get_pix_transaction_stats("202509")
summary = get_pix_summary("202509", group_by="PAG_REGIAO")
format_brl(1234567.89)   # 'R$ 1.234.567,89'

Endpoints

Endpoint Parameter PixClient method Convenience function
ChavesPix Data (YYYY-MM-DD) .keys() get_pix_keys()
TransacoesPixPorMunicipio DataBase (YYYYMM) .transactions_by_municipality() get_pix_transactions_by_municipality()
EstatisticasTransacoesPix Database (YYYYMM) .transaction_stats() get_pix_transaction_stats()
EstatisticasFraudesPix Database (YYYYMM) .fraud_stats() get_pix_fraud_stats()

Use pix_endpoints() and pix_columns("keys"|"municipality"|"stats"|"fraud") to inspect available endpoints and columns.

OData query parameters

All endpoint methods accept the common OData parameters:

  • filter — OData filter expression, e.g. "NATUREZA eq 'P2P' and PAG_REGIAO eq 'SUDESTE'"
  • columns — list of columns to select (unknown columns are dropped with a warning)
  • orderby"Column" (asc) or "Column desc"
  • top — maximum number of records

Note: skip is not supported by the BCB PIX API; passing it emits a warning and is ignored. Use top to limit results.

Notes

  • PixClient(timeout=..., max_retries=..., verbose=...) configures the HTTP session. The default timeout is 120s — the BCB API can be slow for large queries.
  • client.build_url(...) / pix_url(...) return the request URL without sending it (handy for debugging).
  • client.ping() / pix_ping() test connectivity to all four endpoints.

License

MIT

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

pixbr-0.1.0.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pixbr-0.1.0-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

Details for the file pixbr-0.1.0.tar.gz.

File metadata

  • Download URL: pixbr-0.1.0.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pixbr-0.1.0.tar.gz
Algorithm Hash digest
SHA256 738a76f8f8fbbdaee5fb89d7d2439df6eb07c11edb23b2e256cd68664fe09b39
MD5 7c18726dd3edb16f26aeda5e4818936f
BLAKE2b-256 dc41525c9dadc17f806dbf92018c81774574d9cab1494217cf376787c6e35aac

See more details on using hashes here.

Provenance

The following attestation bundles were made for pixbr-0.1.0.tar.gz:

Publisher: publish.yml on StrategicProjects/pixbr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pixbr-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pixbr-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pixbr-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dd8c9f8d6111620d26508e57e054e7aeb09991c16b3f58759f213140c739239b
MD5 fec0d3fcec76c4601193f295be33e21c
BLAKE2b-256 dd348305abae7d1b51a04a187bac5b080e4202d1ffd32ad9a14ed2df79e3499f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pixbr-0.1.0-py3-none-any.whl:

Publisher: publish.yml on StrategicProjects/pixbr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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