Vendas em formato JSONLead: especificação
Especificação JSONLead de vendas: campos, três métodos de entrega e tabela de referência completa.
Este formato continua em uso para as integrações existentes. Para integrações novas, o formato recomendado é o esquema versionado ph.order/1.2.
Automatizar o fluxo de vendas e ligá-lo ao teu sistema de gestão ou ERP nunca foi tão fácil. Com o nosso sistema, cada venda realizada no portal é enviada de forma estruturada para que a possas processar automaticamente sem complicações. Aqui explicamos-te como funciona e como podes implementar esta integração.
Formato de envio: JSONLead como standard de mercado
Para garantir compatibilidade e facilidade de integração, utilizamos o formato JSONLead. Este formato é amplamente reconhecido no mercado e facilita o processamento automático das vendas em sistemas de terceiros.
Métodos de envio disponíveis
Tens três opções para receber as vendas. Em qualquer caso, o conteúdo da venda em formato json será o mesmo.
- Webhook: A opção mais rápida e direta. As vendas são enviadas imediatamente para o URL do teu sistema configurado para as receber (pedido POST). Se por questões de segurança precisares de qualquer tipo de cabeçalho personalizado, podemos adicioná-lo sem problema.
- SFTP/FTP: Podes utilizar o nosso servidor SFTP ou um próprio (SFTP/FTP) para receber os dados. Será criado um ficheiro json por cada venda.
- Email: Se preferires, podemos enviar-te as vendas em formato JSONLead como corpo em correios eletrónicos.
Exemplo de JSONLead enviado
{
"client": {
"foreign_id": "1df807f0ba96f8be5529308f6667a144",
"first_name": "John",
"province": "Haute-Normandie",
"postal_code": "76119",
"phone": "600000000",
"email": "user@mail.com",
"custom": {
"address": "4534 route de la mar",
"city": "76119 - STE MARGUERITE SUR MER",
"country": "FR"
}
},
"sales_lead": {
"origin": {
"source": "portal_hero",
"medium": "Ebay"
},
"related_urls": [
"https://portal.com/item/1234"
],
"status": "confirmed",
"custom": {
"account": "some_email@mail.com",
"external_id": "1243948",
"title": "Some pretty product",
"created_at": "2025-01-17 10:25:22.145432",
"update_at": "2025-01-17 18:21:11.145432",
"amount": 1400.0,
"shipping_amount": 0.0,
"payment_method": "EBAY",
"shipping": {
"delivery_purchase_confirmed": true,
"delivery_purchase_confirmed_ts": "2025-01-17 10:25:22.145432",
"shipping_label_url": "https://portal-xxxx.com/tracking.pdf",
"tracking_code": "XXXXXXXX"
}
},
"foreign_id": "17-12583-30383",
"inquiry": "[{\"created_at\": \"2022-10-31T20:03:21.360000\",\"text\": \"Te dejo mi numero de telefono 6XXXXXXXXX\"}, {\"created_at\":\"2022-10-31T19:50:55.194000\", \"text\": \"Hola!\"}]"
},
"version": "1.0.0"
}
* No caso de portais que permitem múltiplos artigos no mesmo pedido, os elementos do JSON: "sales_lead.custom.external_id", "sales_lead.custom.amount" and "sales_lead.custom.title" serão uma lista em vez de um só elemento. A ordem das listas será respeitada entre eles.
Detalhes dos campos do JSONLead
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
client.foreign_id | string | Sim | Identificador único do cliente. |
client.first_name | string | Sim | Nome do cliente. Consoante o portal pode ser um nome de utilizador. |
client.province | string | Não | Distrito da morada do cliente. |
client.postal_code | string | Não | Código postal da morada do cliente. |
client.phone | string | Não | Número de telefone do cliente. |
client.email | string | Não | Email do cliente. |
client.custom.address | string | Não | Morada postal do cliente. |
client.custom.city | string | Não | Cidade da morada do cliente. |
client.custom.country | string | Não | País (código ISO do país) da morada do cliente. |
sales_lead.origin.source | string | Sim | Origem da venda. Será sempre "portal_hero". |
sales_lead.origin.medium | string | Não | Nome do portal de onde provém a venda. |
sales_lead.related_urls | array | Não | Url/s relevantes. Normalmente o url do artigo no portal. |
sales_lead.status | string | Sim | Estado da venda. Atualmente pode ser "confirmed" ou "cancelled". |
sales_lead.custom.account | string | Não | Email ou identificador da conta no portal. Útil quando se gerem múltiplas contas no mesmo portal para poder identificar a conta de origem da venda. |
sales_lead.custom.external_id | string/arraystring* | Sim | Identificador único do artigo. O mesmo que nos enviam no envio de artigos. |
sales_lead.custom.title | string/arraystring* | Sim | Título do produto vendido. |
sales_lead.custom.created_at | datetime | Sim | Data e hora da criação da venda. |
sales_lead.custom.update_at | datetime | Não | Data e hora da última atualização da venda. |
sales_lead.custom.amount | float/arrayfloat* | Sim | Montante total da venda. |
sales_lead.custom.shipping_amount | float | Não | Montante dos custos de envio. |
sales_lead.custom.payment_method | string | Não | Método de pagamento. |
sales_lead.custom.shipping.delivery_purchase_confirmed | boolean | Sim | Booleano que indica se a venda foi realizada. Virá sempre a true neste caso. |
sales_lead.custom.shipping.delivery_purchase_confirmed_ts | datetime | Não | Obsoleto: Momento de criação da venda. Mesmo valor que "sales_lead.custom.created_at" |
sales_lead.custom.shipping.shipping_label_url | string | Não | Url da etiqueta de envio. Poderá ser um pdf ou uma imagem consoante a empresa de transporte |
sales_lead.custom.shipping.tracking_code | string | Não | Número de seguimento do pedido na empresa de transporte. |
sales_lead.foreign_id | string | Sim | Identificador único da venda. |
sales_lead.inquiry | array | Não | Conversa mantida com o utilizador no portal. |
version | string | Sim | Versão do schema de jsonLead. Versão 1.0.0 por agora. |
* No caso de portais que permitem múltiplos artigos no mesmo pedido, os elementos do JSON: "sales_lead.custom.external_id", "sales_lead.custom.amount" and "sales_lead.custom.title" serão uma lista em vez de um só elemento. A ordem das listas será respeitada entre eles.
Benefícios desta integração
- Automatização Completa: Processa automaticamente as vendas no teu sistema de gestão.
- Padronização: O formato JSONLead assegura compatibilidade com a maioria dos sistemas do mercado.
- Flexibilidade: Escolhe entre webhook, SFTP ou email consoante o que melhor se adapte às tuas necessidades.
Integra esta solução no teu fluxo de trabalho e otimiza a gestão das tuas vendas com rapidez, precisão e facilidade. Se precisares de mais detalhes ou suporte técnico, contacta-nos! 🚀