Ventes au format JSONLead : spécification
Spécification JSONLead des ventes : champs, trois méthodes de livraison et tableau de référence complet.
Ce format reste utilisé pour les intégrations existantes. Pour les nouvelles intégrations, le format recommandé est le schéma versionné ph.order/1.2.
Automatiser le flux de ventes et le connecter à votre système de gestion ou ERP n'a jamais été aussi facile. Avec notre système, chaque vente réalisée sur le portail est envoyée de manière structurée pour que vous puissiez la traiter automatiquement sans complications. Nous vous expliquons ici comment cela fonctionne et comment vous pouvez mettre en œuvre cette intégration.
Format d'envoi : JSONLead comme standard du marché
Pour garantir la compatibilité et la facilité d'intégration, nous utilisons le format JSONLead. Ce format est largement reconnu sur le marché et facilite le traitement automatique des ventes dans les systèmes tiers.
Méthodes d'envoi disponibles
Vous avez trois options pour recevoir les ventes. Dans tous les cas, le contenu de la vente au format json sera le même.
- Webhook : L'option la plus rapide et la plus directe. Les ventes sont envoyées immédiatement à l'URL de votre système configurée pour les recevoir (requête POST). Si, pour des raisons de sécurité, vous avez besoin de n'importe quel type d'en-tête personnalisé, nous pouvons l'ajouter sans problème.
- SFTP/FTP : Vous pouvez utiliser notre serveur SFTP ou le vôtre (SFTP/FTP) pour recevoir les données. Un fichier json sera créé pour chaque vente.
- Email : Si vous préférez, nous pouvons vous envoyer les ventes au format JSONLead comme corps d'e-mails.
Exemple de JSONLead envoyé
{
"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"
}
* Dans le cas des portails qui autorisent plusieurs articles dans la même commande, les éléments du JSON : "sales_lead.custom.external_id", "sales_lead.custom.amount" and "sales_lead.custom.title" seront une liste au lieu d'un seul élément. L'ordre des listes sera respecté entre elles.
Détails des champs du JSONLead
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
client.foreign_id | string | Oui | Identifiant unique du client. |
client.first_name | string | Oui | Nom du client. Selon le portail, il peut s'agir d'un nom d'utilisateur. |
client.province | string | Non | Province de l'adresse du client. |
client.postal_code | string | Non | Code postal de l'adresse du client. |
client.phone | string | Non | Numéro de téléphone du client. |
client.email | string | Non | Email du client. |
client.custom.address | string | Non | Adresse postale du client. |
client.custom.city | string | Non | Ville de l'adresse du client. |
client.custom.country | string | Non | Pays (code ISO du pays) de l'adresse du client. |
sales_lead.origin.source | string | Oui | Origine de la vente. Ce sera toujours "portal_hero". |
sales_lead.origin.medium | string | Non | Nom du portail d'où provient la vente. |
sales_lead.related_urls | array | Non | URL(s) pertinente(s). Normalement l'URL de l'article sur le portail. |
sales_lead.status | string | Oui | État de la vente. Actuellement, il peut être "confirmed" ou "cancelled". |
sales_lead.custom.account | string | Non | Email ou identifiant du compte sur le portail. Utile lorsque plusieurs comptes sont gérés sur le même portail pour pouvoir identifier le compte d'origine de la vente. |
sales_lead.custom.external_id | string/arraystring* | Oui | Identifiant unique de l'article. Le même que celui que vous nous envoyez lors de l'envoi des articles. |
sales_lead.custom.title | string/arraystring* | Oui | Titre du produit vendu. |
sales_lead.custom.created_at | datetime | Oui | Date et heure de la création de la vente. |
sales_lead.custom.update_at | datetime | Non | Date et heure de la dernière mise à jour de la vente. |
sales_lead.custom.amount | float/arrayfloat* | Oui | Montant total de la vente. |
sales_lead.custom.shipping_amount | float | Non | Montant des frais d'expédition. |
sales_lead.custom.payment_method | string | Non | Méthode de paiement. |
sales_lead.custom.shipping.delivery_purchase_confirmed | boolean | Oui | Booléen indiquant si la vente a été réalisée. Sera toujours à true dans ce cas. |
sales_lead.custom.shipping.delivery_purchase_confirmed_ts | datetime | Non | Obsolète : Moment de création de la vente. Même valeur que "sales_lead.custom.created_at" |
sales_lead.custom.shipping.shipping_label_url | string | Non | URL de l'étiquette d'expédition. Peut être un pdf ou une image selon le transporteur |
sales_lead.custom.shipping.tracking_code | string | Non | Numéro de suivi de la commande chez le transporteur. |
sales_lead.foreign_id | string | Oui | Identifiant unique de la vente. |
sales_lead.inquiry | array | Non | Conversation tenue avec l'utilisateur sur le portail. |
version | string | Oui | Version du schéma de jsonLead. Version 1.0.0 pour le moment. |
* Dans le cas des portails qui autorisent plusieurs articles dans la même commande, les éléments du JSON : "sales_lead.custom.external_id", "sales_lead.custom.amount" and "sales_lead.custom.title" seront une liste au lieu d'un seul élément. L'ordre des listes sera respecté entre elles.
Avantages de cette intégration
- Automatisation complète : Traitez automatiquement les ventes dans votre système de gestion.
- Standardisation : Le format JSONLead assure la compatibilité avec la plupart des systèmes du marché.
- Flexibilité : Choisissez entre webhook, SFTP ou email selon ce qui correspond le mieux à vos besoins.
Intégrez cette solution dans votre flux de travail et optimisez la gestion de vos ventes avec rapidité, précision et facilité. Si vous avez besoin de plus de détails ou d'un support technique, contactez-nous ! 🚀