Traduite de l'anglais. En cas de différence, la page en anglais fait foi. Lire en anglais
Programme partenaires : gérer de nombreuses boutiques
Pour les éditeurs de logiciels (ERP, agences) qui utilisent Nembol pour leurs propres clients : une entreprise par client, une clé, une facture.
Le programme partenaires vous permet de gérer de nombreuses boutiques Nembol (une par entreprise cliente) avec une seule clé. Vos clients ne se connectent jamais à Nembol et ne reçoivent aucun e-mail de notre part : vous pilotez tout via l'API, et nous vous facturons une fois par mois pour l'ensemble, à vos tarifs négociés.
L'accès partenaire est activé par Nembol après la signature de l'accord de
partenariat : écrivez à developer@nembol.com. Votre clé a ensuite besoin de la
permission accounts:manage.
Commencer dans la sandbox
Votre compte partenaire démarre en sandbox : jusqu'à 3 entreprises ouvertes, de vrais canaux, webhooks et commandes, et rien n'est facturé. Construisez et testez toute l'intégration dans cet environnement ; quand vous êtes prêt, cliquez sur Passer en production dans Paramètres → Partenaire (d'abord une carte, pour le paiement par carte) : la facturation commence ce jour-là et la même clé et les mêmes entreprises passent en production. Voir Tester votre intégration.
Votre clé et le tableau de bord
Deux pages du tableau de bord comptent, dans la connexion Nembol propre au compte partenaire :
- Paramètres → Développeurs : créez la clé API. Choisissez Live (en
sandbox, une clé Live exécute tout pour de vrai et rien n'est facturé ; une
clé Test ne fait que simuler les appels et ne peut pas créer de vraies
entreprises). Le préréglage Lecture et écriture inclut
accounts:manage, nécessaire pour tous les endpoints partenaires ; le formulaire liste toutes les permissions que reçoit la clé. - Paramètres → Partenaire : vos entreprises (avec un sélecteur
Entreprises / Facturation), le relevé du mois par forfait, votre moyen de
paiement, et un avis Sandbox tant que le compte est en sandbox. Elle
affiche les mêmes données que
GET /accounts,GET /partner/statementetGET /partner/billing.
Vos marchands n'utilisent jamais le tableau de bord : tout ce qui concerne leurs entreprises passe par l'API.
1. Créer une entreprise
curl -X POST https://api.nembol.com/rest/v1/accounts \
-H "Authorization: Bearer $NEMBOL_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name": "Acme Srl", "plan": "pro", "country": "IT", "reference": "ERP-123"}'{ "id": "acct_66f0a1", "object": "account", "name": "Acme Srl", "plan": "pro",
"status": "active", "product_limit": 2000, "channel_accounts": 0, "products": 0 }plan:basic,pro,enterpriseouenterprise_plus. L'entreprise reçoit les limites de ce forfait (produits, comptes de canal, fonctionnalités).- Facturée à partir d'aujourd'hui, au prorata. Pas d'essai. Changez de forfait
à tout moment avec
PATCH /accounts/{id}(au prorata également).
2. Travailler dans une entreprise
Ajoutez Nembol-Account à n'importe quelle requête. Le reste de l'API
fonctionne exactement comme si l'entreprise avait sa propre clé :
curl https://api.nembol.com/rest/v1/products \
-H "Authorization: Bearer $NEMBOL_API_KEY" \
-H "Nembol-Account: acct_66f0a1"Les limites de débit et les Idempotency-Key sont comptées par entreprise :
une entreprise très active ne ralentit donc jamais les autres.
3. Connecter les canaux de l'entreprise
Créez un lien de connexion et envoyez-le au vendeur. Il se connecte seulement à son compte sur le canal :
curl -X POST https://api.nembol.com/rest/v1/channel_connections \
-H "Authorization: Bearer $NEMBOL_API_KEY" \
-H "Nembol-Account: acct_66f0a1" \
-H "Content-Type: application/json" \
-d '{"channel": "amazon", "params": {"country": "US"}, "return_url": "https://erp.example.com/nembol/done"}'Certains canaux demandent quel compte connecter une fois le vendeur connecté
(Amazon avec plusieurs marketplaces, Google Merchant Center, Facebook Catalog
avec plusieurs entreprises). La connexion passe alors en needs_choice avec
choices : affichez-les dans votre application (ou laissez un agent choisir)
et envoyez le choix :
curl -X POST https://api.nembol.com/rest/v1/channel_connections/conn_8a12/choose \
-H "Authorization: Bearer $NEMBOL_API_KEY" \
-H "Nembol-Account: acct_66f0a1" \
-H "Content-Type: application/json" \
-d '{"value": "A2EUQ1WTGCTBG2"}'Enregistrez votre return_url une seule fois, sur votre propre boutique
(POST /redirect_urls) : toutes les entreprises l'utilisent
(GET /redirect_urls dans une entreprise la liste avec inherited: true).
Après la connexion, le navigateur du vendeur arrive sur votre return_url,
avec ces paramètres ajoutés à sa query string (les vôtres sont conservés,
mettez-y donc votre propre id d'entreprise) :
| Paramètre | Valeur |
|---|---|
connection_id | conn_… ; lisez-la avec GET /channel_connections/{id} |
status | connected, failed, needs_choice ou expired |
channel_account_id | chac_… une fois connecté |
error | le motif en cas d'échec : channel_login_failed, link_expired, link_already_used, plan_not_eligible, subscription_inactive, slot_no_longer_available, different_channel_account |
account_id | l'entreprise (acct_…) |
https://erp.example.com/nembol/done?company=42&connection_id=conn_8a12&status=connected&channel_account_id=chac_77b0&account_id=acct_66f0a1Les liens inutilisables reviennent aussi ici (expirés, déjà utilisés ou refusés) : le vendeur termine donc toujours dans votre application, jamais sur une page d'erreur Nembol.
Le lien de retour ne contient que des id Nembol, jamais les codes ou jetons du
canal. La marketplace envoie son code d'autorisation à Nembol, qui l'échange,
conserve les jetons et communique avec le canal pour vous. Vous continuez à
travailler avec votre clé et Nembol-Account.
La query string indique seulement au navigateur ce qui s'est passé : n'importe
qui peut ouvrir votre return_url avec des paramètres inventés. Avant de
marquer le canal comme connecté dans votre application, confirmez depuis votre
serveur avec GET /channel_connections/{connection_id} (et Nembol-Account)
que status vaut connected, ou attendez le webhook
channel_account.connected.
Un lien de connexion fonctionne une seule fois et pendant une heure. Ouvert à
nouveau ou après l'heure, il renvoie le vendeur vers votre return_url avec
error=link_already_used ou error=link_expired (sans return_url, le
vendeur voit une page Nembol) : créez alors une nouvelle connexion. Les canaux
connectés par clés API (Kaufland, OnBuy, PrestaShop, Subito) n'ont pas besoin
de lien : POST /channel_connections avec les clés dans params répond
connected immédiatement, ou channel_credentials_rejected avec le motif du
canal.
Après la connexion
- Rien n'est importé sauf si vous l'avez demandé (
import_products,import_orderssurPOST /channel_connections) ; votre ERP publie ses propres produits. - Vous avez déconnecté un compte et reconnectez la même boutique ? La
prochaine connexion de ce canal la ramène (
reconnects_shop) ; pour une autre boutique, envoyeznew_account: true. Voir Connecter un canal. - Toutes les options de synchronisation démarrent désactivées : activez
celles que le marchand souhaite avec
PATCH /channel_accounts/{id}(par exemplesync.quantity_from_orders: truepour qu'une vente sur le canal baisse le stock partout).
4. Webhooks ou polling
Enregistrez vos endpoints une seule fois, sur votre propre boutique : ils
reçoivent les événements de toutes vos entreprises, chacun avec account_id.
Vous préférez le polling, ou voulez un filet de sécurité ?
GET /events?created_after=… avec votre clé et sans Nembol-Account renvoie
vos propres événements et ceux de toutes vos entreprises dans un seul flux
(chacun avec account_id) ; ajoutez account=acct_… pour une seule
entreprise. Les événements sont conservés 30 jours.
Une intégration ERP type
- Entreprise :
POST /accountsquand un client s'inscrit dans votre ERP ; gardez l'acct_…à côté de votre propre id client (referencecontient le vôtre). - Canaux :
POST /channel_connections→ envoyez le lien → le vendeur revient sur votrereturn_url(voir plus haut). - Produits : recherchez un produit par SKU (
GET /products?sku=…), puisPATCH /products/{id}ouPOST /products. Chaque variante a besoin de son propre SKU, et les produits avec options ont besoin de toutes les combinaisons (S/M × Rouge/Bleu = 4). - Publication :
POST /listings(ou/listings/batchpour plusieurs) avec le compte de canal. Un produit a besoin d'au moins une image. Suivez le statut avec le webhooklisting.status_changed. - Stock :
POST /inventory/batchavec SKU + quantité (jusqu'à 100 éléments). - Commandes : webhook
order.created, avecGET /orderscomme filet de sécurité (voir ci-dessous). Une commande contient toutes ses lignes. - Expédition :
POST /orders/{id}/fulfillmentavec le suivi.
Les règles que l'intégration doit connaître sont rassemblées dans Règles et limites.
5. Facturation
- Une facture par mois pour toutes vos entreprises : chacune sur son forfait, à votre tarif (une remise sur notre prix catalogue ou un prix fixe par forfait).
GET /partner/statement?month=2026-10liste chaque entreprise, son forfait, les jours facturables et le montant. Il correspond à la facture.- Payez par carte (prélèvement automatique) ou sur facture (30 jours). Vous
pouvez aussi payer des mois à l'avance : le crédit est utilisé par les
factures suivantes, et
GET /partner/billingindique ce qu'il reste (credit_balance). - 14 jours après une facture impayée, vos entreprises passent en lecture seule (les commandes et le stock continuent de se synchroniser, rien n'est supprimé) jusqu'au paiement.
6. Fermer une entreprise
POST /accounts/{id}/close arrête sa facturation aujourd'hui. Ses annonces
restent sur les canaux et ses données sont conservées, comme pour tout
utilisateur Nembol qui s'en va. Elle ne peut pas être rouverte.
La fermeture est irréversible, elle demande donc d'abord une confirmation :
- La première requête répond
409 confirmation_requiredavec une description des conséquences et unconfirmation.token. - Montrez les conséquences à la personne. Si elle est d'accord, répétez la
même requête avec l'en-tête
Nembol-Confirmation: <token>. Le jeton ne sert qu'une fois et expire au bout de 10 minutes.
Voir Confirmations et annulation.
Ce que les entreprises ne peuvent pas faire
/billingsur une entreprise répond409 billed_by_partner.- Les écritures sur une entreprise suspendue ou fermée répondent
409 account_suspended/account_closed; les lectures fonctionnent toujours, vous pouvez donc exporter les produits, commandes et clients d'une entreprise fermée. - L'en-tête
Nembol-Accountne fonctionne qu'avec une clé qui aaccounts:manage. Toute autre clé reçoit403 insufficient_scopesur chaque requête qui porte l'en-tête, avant toute lecture : ne donnez pasaccounts:manageà une clé de reporting ou à usage unique, et elle ne pourra atteindre aucune entreprise. - Créer des produits au-delà de la limite du forfait répond
409 product_limit_reached.
Dernière mise à jour le 22 octobre 2026
Besoin d'aide ?
Écrivez-nous et une personne vous répond, généralement sous un jour ouvré.
Gérer l'abonnement
Laissez une application ou un agent gérer tout l'abonnement Nembol de la boutique (souscrire, passer à un forfait supérieur ou inférieur, passer à l'annuel, mettre à jour la carte, résilier et renouveler), tandis que la personne confirme toujours sur la page du prestataire de paiement.
Connecter un canal
Permettez à un marchand de connecter eBay, Shopify, Etsy et d'autres canaux depuis votre application ou votre agent : liens OAuth, canaux à clé API, URL de retour et déconnexion.