> ## Documentation Index
> Fetch the complete documentation index at: https://scaleup-c34c4386.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# GET /api/v1/checkouts/client/:client_secret/stream

> Conexão Server-Sent Events para receber atualizações em tempo real do status do checkout

Endpoint de streaming via **Server-Sent Events (SSE)** que mantém uma conexão persistente e notifica o cliente em tempo real sobre mudanças no status do checkout (ex: PIX confirmado, pagamento falhou, checkout expirou).

## Autenticação

Endpoint público — não requer `Authorization`. Utiliza o `client_secret` como identificador.

## Parâmetros de Path

**client\_secret** `string` *required*

Segredo do cliente do checkout

## Eventos SSE

A conexão envia os seguintes tipos de eventos. Quando presente, `zoop_payment_data` é o objeto retornado pelo gateway com os dados da transação (nome do campo conforme contrato da API).

| Evento | Descrição |
| - | - |
| `connected` | Confirmação de conexão com o estado atual do checkout |
| `checkout.updated` | Status do checkout foi alterado |
| `terminal` | Estado terminal atingido — conexão será encerrada |

### Evento `connected`

```json theme={null}
{
  "checkout_id": "chk_1a2b3c4d5e6f",
  "status": "confirmed",
  "payment_method": "pix",
  "zoop_payment_data": null
}
```

### Evento `checkout.updated`

```json theme={null}
{
  "checkout_id": "chk_1a2b3c4d5e6f",
  "status": "succeeded",
  "payment_method": "pix",
  "succeeded_at": "2026-03-20T10:05:00Z",
  "zoop_payment_data": { "transaction_id": "txn_pix_abc" }
}
```

### Evento `terminal`

```json theme={null}
{ "status": "succeeded" }
```

Enviado quando o checkout atinge um estado terminal: `succeeded`, `failed` ou `expired`. A conexão é encerrada \~1 segundo após este evento.

> [!NOTE]
>
> Um heartbeat (`:heartbeat`) é enviado a cada 30 segundos para manter a conexão ativa.

## Exemplo

```javascript JavaScript theme={null}
const eventSource = new EventSource(
  'https://api.chargefy.io/api/v1/checkouts/client/chks_secret_xyz/stream'
);

eventSource.addEventListener('connected', (e) => {
  const data = JSON.parse(e.data);
  console.log('Conectado. Status atual:', data.status);
});

eventSource.addEventListener('checkout.updated', (e) => {
  const data = JSON.parse(e.data);
  if (data.status === 'succeeded') {
    console.log('Pagamento confirmado!');
    eventSource.close();
  }
});

eventSource.addEventListener('terminal', (e) => {
  eventSource.close();
});
```


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