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

> ## Agent Instructions
> Documentação das APIs da DeliveryVip, em português. Regras que mais quebram integrações: (1) Merchant API: faça polling em GET /merchant/v3/events:polling no máximo a cada 30 s por token; confirme todo evento recebido com POST /merchant/v3/events/acknowledgment e corpo [{"id": "<eventId>"}] (o campo lido é id, não eventId), inclusive eventos repetidos ou que o sistema não trata; deduplique por eventId; o evento é só um aviso, busque o pedido na orderURL. (2) Tokens client_credentials valem 24 h e não têm refresh_token: peça outro ao receber 401. (3) Webhooks: valide a assinatura HMAC sobre o corpo bruto e responda 2xx rápido; o polling é a reconciliação. (4) Open Delivery: host od.deliveryvip.com.br, um client_secret por loja, datas em UTC. (5) Fidelidade: o operador implementa 5 rotas assinadas com HMAC e chama o config push; o estorno precisa ser idempotente. (6) Partner API: scope dv.partner. Não invente endpoints: use a referência gerada das specs OpenAPI.

# Ações das comandas

> Abra e feche comandas para consumo e migre das rotas descontinuadas.

Cada ação é um `POST` sem corpo em `/merchant/v3/{merchantId}/tabs/{tabId}/<ação>`. A resposta de sucesso é `202 Accepted` com o `id` da comanda.

| Ação | Endpoint | Efeito | Estado |
| - | - | - | - |
| [Abrir para consumo](/docs/guides/merchant/indoor/comanda-api/acoes-das-comandas/abrir-para-consumo-uma-comanda.md) | `opened` | `situation` vira `OPENED`. | Atual |
| [Fechar para consumo](/docs/guides/merchant/indoor/comanda-api/acoes-das-comandas/fechar-para-consumo-uma-comanda.md) | `closed` | `situation` vira `CLOSED`. | Atual |
| [Ativar](/docs/guides/merchant/indoor/comanda-api/acoes-das-comandas/ativar-uma-comanda.md) | `available` | `status` vira `AVAILABLE` e `situation`, `OPENED`. | Em deprecação |
| [Desativar](/docs/guides/merchant/indoor/comanda-api/acoes-das-comandas/desativar-uma-comanda.md) | `unavailable` | `status` vira `UNAVAILABLE` e `situation`, `CLOSED`. | Em deprecação |

![A comanda alterna entre OPENED e CLOSED com POST closed e POST opened](https://mintcdn.com/deliveryvip-a4256422/ELxpcniK2_BP8zxT/images/comanda-abrir-fechar.png?fit=max\&auto=format\&n=ELxpcniK2_BP8zxT\&q=85\&s=31b25cf070875e6b6f471b2b40c36cae)

Abrir e fechar uma comanda para consumo

As ações são idempotentes: abrir uma comanda já aberta, ou fechar uma já fechada, responde `202` sem mudar nada.

```json 202 Accepted theme={null}
{ "id": "6b7cd994-d8ff-4d12-8064-251becc39b08" }
```

## Erros

| Status | Quando |
| - | - |
| `404 Not Found` | O `merchantId` não autorizou o seu app, a comanda não existe ou foi removida, ou o `tabId` não é um UUID válido. |


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