# API — Parâmetros e Resposta

<div class="pw" id="bkmrk-"><div class="ph">  
</div></div>Especificação completa de getVendas: entrada, saída, erros e exemplos JSON.

## Identificação do serviço

<div class="pw" id="bkmrk-refer%C3%AAncia"><div class="card"><div class="ct">Referência</div></div></div>**Token:** `<TOKEN_FULLSTORE>`  
**Método HTTP:** `POST` | **Formato:** JSON

**BaseUrl: HTTPS://SEUSISTEMA.PDV.MODA/bibliotecas/ba4e7bb5-4770-4780-beaa-b28980153cc7/wosk/webservice/fullStoreService**

## Payload de entrada

```


{
    "acao": "getVendas",
    "key":" CHAVE API FORNECIDA",
    "parametros": {
        "dataInicio": "2026-03-10",
        "dataFim": "2026-03-10",
        "cnpjLoja": ""
    }
}
```

<div class="pw" id="bkmrk-campo-tipo-formato-o"><div class="tw"><table><thead><tr><th>Campo</th><th>Tipo</th><th>Formato</th><th>Obrig.</th><th>Descrição</th></tr></thead><tbody><tr><td>`acao`</td><td>string</td><td>literal</td><td><span class="badge br">Sim</span></td><td>Deve ser exatamente `"getVendas"`</td></tr><tr><td>`parametros.dataInicio`</td><td>string</td><td>`Y-m-d`</td><td><span class="badge br">Sim</span></td><td>Início do período. Ex: `"2026-05-01"`</td></tr><tr><td>`parametros.dataFim`</td><td>string</td><td>`Y-m-d`</td><td><span class="badge br">Sim</span></td><td>Fim do período. Ex: `"2026-05-31"`</td></tr><tr><td>`parametros.cnpjLoja`</td><td>string</td><td>14 dígitos</td><td><span class="badge br">Sim</span></td><td>CNPJ sem máscara — filtra todos os canais</td></tr><tr><td>`falha`</td><td>any</td><td>—</td><td><span class="badge bo">Teste</span></td><td>Se presente e não nulo, forçamos retorno de erro</td></tr></tbody></table>

</div><div class="wb">**Limite de 200 dias** Se `dataInicio` ou `dataFim` estiver além de 200 dias no passado, a implementação atual monta um `fallback` interno, mas a resposta final retorna `success: false` com mensagem de nenhum registro encontrado.</div></div>## Resposta de sucesso (com dados)

```
{
  "success": true,
  "message": "Vendas retornadas com sucesso!",
  "data": {
    "vendas": [
      {
        "codigo_cliente": 123, "cod_vendedor": "V001",
        "cnpj_emp": "12345678000190",
        "data_documento": "2026-05-15T10:30:00-03:00",
        "identificador": 9001, "transacao": 9001, "usuario": 42,
        "documento": "000001234", "serie": "001",
        "operacao": "S", "tipo_transacao": "VENDA",
        "cancelado": "N", "delivery": false,
        "itens": [
          { "cod_produto": "PROD-001", "descricao_produto": "Camiseta Branca M",
            "cod_barra": "7891234567890", "quantidade": 2,
            "preco_unitario": 89.90, "valor_total": 179.80 }
        ]
      }
    ],
    "trocas": [
      {
        "motivo": "Defeito", "doc_venda": "000001234", "serie_venda": "001",
        "cod_cliente": 123, "cnpj_emp": "12345678000190",
        "valor_vale": 89.90, "valor_original": 179.80,
        "timestamp": "2026-05-18T14:22:00-03:00",
        "cod_vendedor": "V001", "quantidade": 1
      }
    ],
    "omni": [
      {
        "id_cliente": 456, "cod_vendedor": "V007",
        "cnpj_emp": "12345678000190",
        "data_documento": "2026-05-20 16:45:00",
        "id_pessoa": 88, "identificador": 3001, "transacao": 3001, "usuario": 42,
        "documento": "ORÇ-00321", "vendedor": "João Silva", "cancelado": "N",
        "itens": [
          { "cod_produto": "PROD-099", "descricao_produto": "Tênis Running 42",
            "cod_barra": "7896543219870", "quantidade": 1,
            "preco_unitario": 349.90, "valor_total": 349.90 }
        ]
      }
    ],
    "vendas_ecommerce": [
      {
        "documento_cliente": "123.456.789-00", "cod_vendedor": "EC001",
        "cupom_vendedor": "VEND10OFF", "codigo_filial": "000001",
        "data_documento": "2026-05-22 09:15:00",
        "pedido_site": "PS-98765", "pedido_wms": "WMS-54321",
        "ticket": "TKT-11111", "documento": "000005678",
        "serie": "001", "valor": "259.90", "qtde": "2"
      }
    ],
    "fallback": null
  }
}
```

## Resposta — período excede o limite

```
{
  "success": false,
  "message": "Nenhum registro encontrado no periodo 2025-01-01 - 2025-06-30 para o cnpj 12345678000190",
  "data": null
}
```

## Respostas de erro

### Parâmetro obrigatório ausente

```
{ "success": false, "message": "O parametro dataInicio é obrigatorio", "data": null }
```

### Ação inválida

```
{ "success": false, "message": "Acao nao encontrada", "data": null }
```

### Nenhum dado no período

```
{
  "success": false,
  "message": "Nenhum registro encontrado no periodo 2026-05-01 - 2026-05-31 para o cnpj 12345678000190",
  "data": null
}
```

## Formato de datas

O formato de data varia por canal na implementação atual. PDV e Trocas convertem datas com `date('c', strtotime($valor))`. Omni e E-commerce retornam a data no formato vindo da consulta, sem conversão explícita para ISO 8601:

```
// PDV / Trocas
"data_documento": "2026-05-15T10:30:00-03:00"

// Omni / E-commerce
"data_documento": "2026-05-20 16:45:00"
```