Enviar compras em lote para um diagnóstico
Esta requisição envia um lote de 1 a 1000 compras para um diagnóstico previamente criado via API pública.
Corpo da requisição é um array na raiz
Diferente das demais requisições desta API, o corpo (body) desta requisição é um array JSON na raiz, sem nenhuma chave envolvente — envie a lista de compras diretamente, como no exemplo abaixo.
bash
curl --location --request POST 'https://sandbox.fidelizii.com.br/api/v4/estabelecimentos/3954/diagnosticos/123/compras' \
--header 'app-token: {{app-token}}' \
--header 'access-token: {{access-token}}' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '[
{
"identificador_compra": "0461944",
"identificador_cliente": "544635******2821",
"valor_bruto": 1300,
"valor_liquido": 1264,
"data_compra": "2024-04-23 14:32:20",
"bandeira": "mastercard",
"produto": "credito",
"numero_parcelas": 1,
"meio_captura": "POO"
}
]'O processamento é assíncrono: a resposta 202 é retornada assim que o lote é enfileirado, e as compras são persistidas em instantes. O reenvio de uma compra com o mesmo identificador_compra atualiza os valores já existentes em vez de duplicar o registro (idempotente).
| Parâmetro | Descrição | Exemplo |
|---|---|---|
| identificador_compra | Identificador único da compra no sistema de origem (Obrigatório, máximo 255 caracteres) | 0461944 |
| identificador_cliente | Identificador do cliente, como um cartão mascarado (Obrigatório, máximo 255 caracteres) | 544635******2821 |
| valor_bruto | Valor bruto da compra em centavos (Obrigatório) — R$ 13,00 = 1300 | 1300 |
| valor_liquido | Valor líquido da compra em centavos (Obrigatório) — R$ 12,64 = 1264 | 1264 |
| data_compra | Data e hora da compra (Obrigatório, formato Y-m-d H:i:s) | 2024-04-23 14:32:20 |
| bandeira | Bandeira do cartão (Opcional, máximo 100 caracteres) | mastercard |
| produto | Produto/modalidade da transação (Opcional, máximo 100 caracteres) | credito |
| numero_parcelas | Número de parcelas (Opcional — assume 1 quando ausente) | 1 |
| meio_captura | Meio de captura da transação (Opcional, máximo 100 caracteres) | POO |
Caso a requisição seja realizada com sucesso, você terá um retorno parecido com o exemplo abaixo:
json
{
"success": true,
"message": "Lote recebido. As compras serão processadas em instantes.",
"data": {
"id_diagnostico": 123,
"compras_recebidas": 1
}
}Diagnóstico inválido para o lote
- Caso o
id_diagnosticonão exista ou pertença a outro estabelecimento, a requisição retorna erro 404. - Caso o diagnóstico não tenha sido criado via API pública, a requisição retorna erro 403.

