> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ephra.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Sincronizar vendas

> Leve as vendas da Ephra para o seu ERP, CRM ou planilha, com o webhook como gatilho e a API como conferência.

Use os dois juntos: o webhook avisa na hora, e a API cobre o que o webhook perdeu.

**1. Receba cada venda pelo webhook**

Assine `transaction_paid` e `transaction_refunded`. Cada evento traz a venda, o comprador, o produto e a oferta em `sale.mainOfferName`. Grave pelo `transaction.id`, que é único.

**2. Confira uma vez por dia pela API**

Liste as vendas pagas do dia anterior e grave as que faltarem:

```bash cURL theme={"system"}
curl -s "https://api.ephra.io/v1/transactions?status=paid&initialDate=2026-10-18&finalDate=2026-10-18&offset=0" \
  -H "Authorization: Bearer $TOKEN"
```

```javascript Node theme={"system"}
const res = await fetch("https://api.ephra.io/v1/transactions?status=paid&initialDate=2026-10-18&finalDate=2026-10-18&offset=0", {
  headers: {
    Authorization: `Bearer ${token}`,
  },
});
const json = await res.json();
```

```python Python theme={"system"}
import requests

res = requests.get(
    "https://api.ephra.io/v1/transactions?status=paid&initialDate=2026-10-18&finalDate=2026-10-18&offset=0",
    headers={
        "Authorization": f"Bearer {token}",
    },
)
data = res.json()
```

A lista vem em páginas. Some o tamanho da página ao `offset` até passar de `totalRows`.

**3. Para volume grande, exporte**

`POST /v1/transactions/export` gera um CSV com o período inteiro, inclusive a carteira digital e o prazo de reembolso. Bom para fechamento do mês.

> [!NOTE]
>
> Valores sempre em centavos. `amount` é o que o comprador pagou, `netAmount` é o que fica para você depois das taxas.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.