Skip to content

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âmetroDescriçãoExemplo
identificador_compraIdentificador único da compra no sistema de origem (Obrigatório, máximo 255 caracteres)0461944
identificador_clienteIdentificador do cliente, como um cartão mascarado (Obrigatório, máximo 255 caracteres)544635******2821
valor_brutoValor bruto da compra em centavos (Obrigatório) — R$ 13,00 = 13001300
valor_liquidoValor líquido da compra em centavos (Obrigatório) — R$ 12,64 = 12641264
data_compraData e hora da compra (Obrigatório, formato Y-m-d H:i:s)2024-04-23 14:32:20
bandeiraBandeira do cartão (Opcional, máximo 100 caracteres)mastercard
produtoProduto/modalidade da transação (Opcional, máximo 100 caracteres)credito
numero_parcelasNúmero de parcelas (Opcional — assume 1 quando ausente)1
meio_capturaMeio 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_diagnostico nã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.