Artigos sobre: API Voxuy

Documentação API

Request



Para enviar um Request para a Voxuy, você usará a URL para Webhook (Veja a página Dados necessários para a API para mais informações).

Esse Request deve ser um POST, e conter o Header Content-Type: application/json

Body



O corpo (dados) do Request que você enviará deve ser um JSON com os seguintes campos:

*Obs: todos os campos de valores são em Integer, sem vírgulas. Por exemplo, o valor R$ 69,90 seria enviado como 6990.

CampoTipoRequerido?Descrição
apiTokenStringToken da API encontrado em Configurações Gerais – API Voxuy – Token API
idStringXCódigo de venda / ID único dessa transação. Esse é o identificador de uma venda/pedido/item para que seja adicionado ou atualizado. Caso este campo esteja vazio, um código único será atribuido.
planIdStringID do plano desejado (veja Dados necessários para a API)
agentEmailStringCaso preenchido, especifica o atendente responsável pelas próximas mensagens desta transação.
dontCancelPreviousBooleanComo padrão, a Voxuy irá cancelar e remover do funil todas as mensagens anteriores ao entrar uma nova transação para o mesmo número. Use este campo como true para não cancelar essas mensagens anteriores. Útil se você não quiser tirar ninguém de um funil e está somente enviando uma mensagem avulsa agora.
valueIntegerXValor líquido da venda/pedido.
freightIntegerXValor do frete.
freightTypeStringXTipo do frete, por exemplo, PAC.
totalValueIntegerXValor total da venda/pedido.
metadataObjectXCampos adicionais que queira usar futuramente como variáveis nas mensagens.
paymentTypeIntegerTipo de pagamento da venda/pedido/item. Veja a tabela Tipos de Pagamento abaixo para possíveis valores.
statusIntegerStatus atual da venda/pedido/item. Veja a tabela Status do Pedido abaixo para possíveis valores.
customEventIntegerXID do evento, caso esteja colocando esta pessoa em um evento personalizado do funil.
dateDateTimeXData da venda/pedido/item. Este campo deverá ser enviado no formato ISO 8601, em UTC. Exemplo: “2021-05-01T21:00:00Z” (Z para sinalizar UTC) Caso o campo vier em branco (nulo), a data atual (ao receber o webhook) será usada. Obs.: Caso esta data seja anterior à data de criação da licença da Voxuy, não será agendada mensagens manualmente.
clientNameStringXNome do cliente/lead.
clientEmailStringXEmail do cliente/lead.
clientPhoneNumberStringXTelefone completo do cliente/lead, incluindo código do país. Exemplo: +5511912341234
clientDocumentStringXCPF ou CNPJ do cliente/lead.
clientAddressStringXLogradouro do endereço do cliente/lead.
clientAddressNumberStringXNúmero do endereço do cliente/lead.
clientAddressCompStringXComplemento do endereço do cliente/lead
clientAddressDistrictStringXBairro do cliente/lead
clientAddressCityStringXCidade do cliente/lead
clientAddressStateStringXEstado do cliente/lead
clientZipCodeStringXCódigo Postal do cliente/lead
checkoutUrlStringXURL de checkout para o cliente/lead finalizar ou refazer a compra.
paymentLineStringXLinha digitável do boleto, caso esta compra seja via Boleto.
boletoUrlStringXURL de acesso ao boleto do cliente/lead, caso esta compra seja via Boleto.
pixQrCodeStringXQR Code completo do Pix, caso esta compra seja via Pix.
pixUrlStringXURL de acesso aos dados do Pix, caso esta compra seja via Pix.
fileUrlStringXURL para enviar algum arquivo personalizado dessa transação (não esqueça de habilitar a opção na parte “Avançada” do funil )
currentShippingEventIntegerXPara logística, o evento atual desta venda. (Ver tabela “Status de Logística” abaixo)
shippingObjectXDados da última atualização de logística (Ver tabela “Logística” com campos disponíveis)


Tipos de Pagamento


NomeValorDescrição
Gratuito0Usado quando há uma venda mas não tem valor monetário.
Boleto1Pedido via boleto.
Cartão de Crédito2Pedido via Cartão de Crédito.
PayPal3Pedido via PayPal.
Boleto Parcelado4Pedido via boleto, de forma parcelada.
Depósito bancario5Pedido via depósito bancário.
Depósito em conta6Pedido com pagamento usando crédito em conta da plataforma.
Pix7Pedido via Pix.
Nenhum99Use este valor caso seja um Carrinho Abandonado, Mensagem Externa ou algum Evento Personalizado.


Status do Pedido



NomeValorDescrição
Pendente / Aguardando Pagamento0Pedido em aberto, aguardando pagamento.
Pagamento Aprovado1Pagamento foi aprovado e pronto para envio.
Cancelado2Pedido cancelado ou com pagamento não aprovado.
Chargeback3Pedido com Chargeback
Estornado4Cliente foi estornado.
Em Análise5Pagamento em análise pela instituição financeira.
Aguardando Estorno6Estorno pedido pelo cliente.
Processando Cartão7Pagamento em cartão sendo processado.
Parcialmente Pago8Valor completo ainda não foi pago
Bloqueado9Pedido bloqueado.
Rejeitado10Rejeitado, possivelmente por alguma tentativa de fraude
Duplicado11Pagamento duplicado
Carrinho Abandonado80Também conhecido como Abandono de Checkout.
Nenhum / Desconhecido99Use este valor caso esteja usando um evento personalizado.


Status de Logística



NomeValorDescrição
Nenhum0Pedido não possui nenhum status de logística.
Postado1O vendedor levou o objeto para a transportadora
Em Trânsito2A transportadora está fazendo a logística do objeto
Retirada3O cliente precisa retirar o pacote na transportadora
Alerta4Ocorreu algum problema com o objeto, como por exemplo, extravio
Saiu para entrega5A transportadora está levando o objecto para a residência do cliente
Entregue6Objeto recebido pelo cliente


Logística



CampoTipoRequerido?Descrição
trackingCodeStringXCódigo de rastreio
trackingUrlStringXURL para rastreio
branchNameStringXAgência ou local em que o produto se encontra
cityStringCidade em que o produto se encontra
stateStringXEstado/UF em que o produto se encontra
countryStringXPaís em que o produto se encontra
dateStringXData e hora da última atualização recebida pela empresa de logística. Este campo deverá ser enviado no formato ISO 8601, em UTC. Exemplo: “2021-05-01T21:00:00Z” (Z para sinalizar UTC)


Exemplo de Request



Este exemplo criará um novo item que agendará mensagens do funil personalizado que criamos de teste.

POST https://sistema.voxuy.com/api/<codigo>/webhooks/voxuy/transaction

Headers:

Content-Type: application/json

{
  "apiToken": "00000000-0000-0000-0000-000000000000",
  "id": "<id-do-seu-sistema>",
  "planId": "e9b3a0a5-7ad9-4ea9-b7dd-93cfeb",
  "value": null,
  "freight": null,
  "freightType": null,
  "totalValue": null,
  "metadata": null,
  "paymentType": 99,
  "status": 99,
  "customEvent": 63,
  "paymentLine": null,
  "date": "2021-05-21T23:59:00Z",
  "clientName": "Cliente 1",
  "clientEmail": null,
  "clientPhoneNumber": "+551199999999",
  "clientDocument": null,
  "clientAddress": null,
  "clientAddressNumber": null,
  "clientAddressComp": null,
  "clientAddressDistrict": null,
  "clientAddressCity": null,
  "clientAddressState": null,
  "clientAddressCountry": null,
  "clientZipCode": null,
  "checkoutUrl": null,
  "boletoUrl": null,
  "pixQrCode": null,
  "pixUrl": null
}

Resposta (Código 200) – sucesso.

{ "Success": true }

Resposta (Código 400 – Bad Request) quando algum campo enviado for inválido.

{
    "errors": {
        "clientPhoneNumber": [
            "The clientPhoneNumber field is required."
        ]
    },
    "type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
    "title": "One or more validation errors occurred.",
    "status": 400,
    "traceId": "0HM8U2U27H831:00000001"
}

Actualizado em: 14/07/2022