Metadata-Version: 2.4
Name: adila-pay
Version: 0.3.1
Summary: SDK Adila Pay para Python, com clientes síncrono e assíncrono
License-Expression: MIT
Project-URL: Documentation, https://docs.adila.co/sdk
Project-URL: Repository, https://github.com/adila-sh/payment-sdks
Project-URL: Issues, https://github.com/adila-sh/payment-sdks/issues
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: httpx<1,>=0.28.1
Requires-Dist: pydantic<3,>=2.11
Requires-Dist: typing_extensions<5,>=4.12
Dynamic: license-file

# Adila Pay para Python

SDK Python 3.10+ com clientes síncrono e assíncrono, gerado a partir do mesmo
contrato financeiro dos SDKs Node.js/Bun. O módulo se chama `adila_pay`.

## Instalação

```bash
python -m pip install adila-pay
# ou
uv add adila-pay
```

## Uso no servidor

```python
import os
import httpx
from adila_pay import AdilaPayClient

with httpx.Client(follow_redirects=False) as transport:
    client = AdilaPayClient(
        base_url=os.environ["ADILA_PAY_BASE_URL"],
        api_key=os.environ["ADILA_PAY_API_KEY"],
        timeout=30,
        max_retries=2,
        httpx_client=transport,
    )
    customers = client.customers.list(
        organization_id=os.environ["ADILA_PAY_ORGANIZATION_ID"],
        limit=10,
    )
    customer = client.customers.create(
        organization_id=os.environ["ADILA_PAY_ORGANIZATION_ID"],
        idempotency_key="cliente-integracao-001",
        name="Cliente de exemplo",
    )
```

Para async, importe `AsyncAdilaPayClient`, use `httpx.AsyncClient` com
`async with` e aguarde os métodos com `await`. O contexto fecha o transporte.
Erros HTTP derivam de `adila_pay.core.api_error.ApiError` e expõem `status_code`.
Configure a URL da sua instalação; API keys pertencem somente ao servidor.

São 43 operações financeiras, incluindo links de pagamento, códigos promocionais e configuração de repasses.
Criação de conta, onboarding e cadastro humano
ficam fora do cliente. Respostas Stripe continuam abertas, com modelos Pydantic
para os envelopes de lista. A aplicação controla `starting_after` e `has_more`.
Mutações exigem chave de idempotência de 8 a 255 caracteres. Reutilize a mesma
chave e corpo somente para repetir a mesma operação lógica.

Consulte [a documentação](https://docs.adila.co/sdk) para o exemplo assíncrono
completo e os limites de ambiente. O módulo contém `openapi.json`,
`provenance.json` e `py.typed`.
