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

# Cobrança PIX

> Estrutura e atributos de uma cobrança PIX na API Bob Payments

## Estrutura

Uma cobrança PIX é representada pela seguinte estrutura:

```json theme={"system"}
{
  "id": "clx7a8b9c0d1e2f3g4h5",
  "externalId": "pedido_123",
  "amountCents": 10000,
  "product": "Plano Premium",
  "status": "waiting_payment",
  "pixCode": "00020126580014br.gov.bcb.pix...",
  "expirationDate": "2026-02-28T10:00:00.000Z",
  "customerEmail": "joao@email.com",
  "customerName": "João Silva",
  "customer": {
    "name": "João Silva",
    "email": "joao@email.com",
    "document": "12345678900"
  },
  "createdAt": "2026-02-28T09:00:00.000Z",
  "updatedAt": "2026-02-28T09:00:00.000Z"
}
```

## Atributos

<ResponseField name="id" type="string">
  Identificador único da cobrança no formato CUID.
</ResponseField>

<ResponseField name="externalId" type="string">
  Identificador da cobrança no seu sistema. Use para cruzar dados sem armazenar o `id` interno. Deve ser único por projeto.
</ResponseField>

<ResponseField name="amountCents" type="integer">
  Valor da cobrança em centavos. Exemplo: `10000` = R\$ 100,00.
</ResponseField>

<ResponseField name="product" type="string">
  Nome ou descrição do produto/serviço cobrado. Aparece na notificação do PIX para o pagador.
</ResponseField>

<ResponseField name="status" type="string">
  Status atual da cobrança.

  <Note>
    | Status            | Descrição                                      |
    | ----------------- | ---------------------------------------------- |
    | `waiting_payment` | **Aguardando pagamento do cliente**            |
    | `processing`      | **Pagamento recebido, aguardando confirmação** |
    | `paid`            | **Pagamento confirmado**                       |
    | `expired`         | **O tempo limite de pagamento foi excedido**   |
    | `cancelled`       | **A cobrança foi cancelada**                   |
    | `refunded`        | **O valor foi devolvido ao cliente**           |
  </Note>
</ResponseField>

<ResponseField name="pixCode" type="string">
  Código PIX copia-e-cola (Pix Payload Format Object). Disponível apenas quando `status` é `waiting_payment`.
</ResponseField>

<ResponseField name="expirationDate" type="date-time">
  Data e hora de expiração da cobrança. Após esse momento, o status muda para `expired`.
</ResponseField>

<ResponseField name="customerEmail" type="string | null">
  E-mail do comprador. Atalho direto ao campo `customer.email`, disponível no nível raiz da transação.
</ResponseField>

<ResponseField name="customerName" type="string | null">
  Nome do comprador. Atalho direto ao campo `customer.name`, disponível no nível raiz da transação.
</ResponseField>

<ResponseField name="customer" type="object">
  Dados do comprador vinculado à cobrança. Consulte a [entidade Customer](/pages/customers/reference).
</ResponseField>

<ResponseField name="createdAt" type="date-time">
  Data e hora de criação da cobrança.
</ResponseField>

<ResponseField name="updatedAt" type="date-time">
  Data e hora da última atualização.
</ResponseField>

## Próximos passos

<CardGroup cols={2}>
  <Card title="Criar cobrança" icon="code" href="/pages/pix/create">
    Gere um PIX com valor, produto e dados do comprador.
  </Card>

  <Card title="Consultar status" icon="magnifying-glass" href="/pages/pix/check-status">
    Verifique o estado atual de uma cobrança.
  </Card>
</CardGroup>
