Metadata-Version: 2.4
Name: speicep
Version: 0.1.0
Summary: SDK oficial de SPEICEP: valida transferencias SPEI/SPID contra el CEP de Banxico.
Author: SPEICEP
License: MIT
Project-URL: Homepage, https://speicep.com
Project-URL: Documentation, https://speicep.com/docs
Keywords: spei,spid,cep,banxico,validar pagos,fintech,mexico
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: requests>=2.20

# speicep

SDK oficial de **SPEICEP** para Python. Valida transferencias **SPEI/SPID** contra el **CEP de Banxico** con una sola llamada.

> La API key es **secreta**. Usa este SDK solo en tu **backend**.

## Instalacion

```bash
pip install speicep
```

## Uso

```python
from speicep import SpeiCep

speicep = SpeiCep("sk_live_...")

# 1) Validar un comprobante (imagen o PDF)
res = speicep.validate("comprobante.pdf")
print(res["status"])   # "valid" | "not_found" | "failed"
print(res.get("cep"))  # CEP oficial completo (si es valido)

# 2) Validar con datos a mano (sin archivo)
res2 = speicep.validate_manual(
    operation_date="28-08-2026",
    tracking_key="058-28/08/2026/28-084ZUZW879",
    sender_bank="BANORTE",
    amount=12876.00,
)

# 3) Consultar una validacion previa
v = speicep.get_validation("9cad30ac-...")
```

### Otras formas de pasar el archivo

```python
# bytes (requiere filename)
speicep.validate(datos_bytes, filename="comprobante.jpg")

# elegir una cuenta receptora especifica
speicep.validate("comprobante.pdf", receiver_account_id="ee7480a3-...")
```

## Manejo de errores

```python
from speicep import SpeiCep, SpeiCepError

try:
    speicep.validate("comprobante.pdf")
except SpeiCepError as e:
    print(e.status, str(e), e.data)   # ej. 401 invalid_api_key
```

Documentacion completa: https://speicep.com/docs
